Mes informations sur le processus:
lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 158 Model name: Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz Stepping: 9 CPU MHz: 1036.788 CPU max MHz: 3500,0000 CPU min MHz: 800,0000 BogoMIPS: 6000.00 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 6144K NUMA node0 CPU(s): 0-3
Jai essayé:
sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi
Si je choisis:
arm-linux-gcc arm-linux-gcc: command not found
Comment installer le compilateur croisé?
Commentaires
Réponse
TLDR
vous devez appeler arm-linux-gnueabi-gcc
et non arm-linux-gcc
.
Il semble que vous ayez « un nom de fichier incorrect. Pour référence apt-file
est un outil utile.
sudo apt-get install apt-file sudo apt-file update apt-file search -x "gcc$" | grep "gcc-arm-linux-gnueabi"
Ceci recherche nimporte quel fichier se terminant par gcc
dans nimporte quel package avec gcc-arm-linux-gnueabi
dans le nom. Le résultat est:
gcc-arm-linux-gnueabi: /usr/bin/arm-linux-gnueabi-gcc
Donc, si vous avez gcc-arm-linux-gnueabi
vous devriez avoir un fichier /usr/bin/arm-linux-gnueabi-gcc
.
Commentaires
- Savoir rechercher
arm-linux-gnueabi
signifie déjà connaître la réponse ;-).apt-file search -x 'arm-linux.*gcc$'
serait plus détectable. - Vrai. Cétait dans la question de lOP ' sous " Jai essayé … " mais comme vous le dites, si vous ' ne savez pas, une bonne connaissance des expressions régulières est également utile.
- Mon point est que lOP ne savait pas quelle commande à exécuter, donc je ne pouvais pas savoir quoi rechercher dans le contenu du package (par opposition aux noms de package).
- Je navais aucune connaissance préalable de tout cela avant de tenter de le trouver moi-même. La recherche dans ma réponse est construite à partir du paquet quils ont déjà installé et
gcc
à la fin du nom de la commande – une généralisation de ce quils essayaient déjà (arm-linux-gcc
) – Cétait la première chose que jai essayée .. - Je suppose que je trouve juste surprenant dutiliser
apt-file search
pour rechercher un nom de paquet (comme vous le dites, « Ceci recherche dans tous les packages un fichier ou un package contenantarm-linux-gnueabi
« ) lorsqueapt-file search
recherche uniquement le contenu du package (qui trouve aussi accidentellement des noms de paquets, grâce à/usr/share/doc/<package>/copyright
).
Réponse
Comme steeldriver le suggère, vous avez déjà installé le compilateur croisé; le problème est que vous utilisez la mauvaise commande pour l’appeler, vous devez utiliser le préfixe arm-linux-gnueabi-
en général. Alors lancez
arm-linux-gnueabi-gcc
ou
arm-linux-gnueabi-g++
et cela devrait fonctionner correctement.
Pour comprendre cela vous-même, vous pouvez utiliser dpkg -L
pour répertorier le contenu des packages que vous avez installés:
dpkg -L gcc-arm-linux-gnueabi
arm-linux-gnueabi-gcc