web-dev-qa-db-fra.com

Commande gcc-arm-linux-gnueabi introuvable

J'essaie d'installer la chaîne d'outils gnu arm pour Ubuntu. J'ai d'abord téléchargé le goudron de CodeSourcery. Cependant, lorsque je vais dans le dossier bin, je ne peux exécuter aucun des binaires. J'ai essayé avec ./ et sans et en le mettant dans le CHEMIN et il continue de me dire "Commande introuvable" mais le fichier est là dans le dossier juste en face de moi. Ensuite, j'ai essayé Sudo apt-get install gcc-arm-linux-gnueabi, sauf après qu'il indique qu'il a été installé avec succès, je ne le trouve pas avec whereis gcc-arm-linux-gnueabi. Quelqu'un peut-il aider?

23
user1952441

Compilez-vous sur un système d'exploitation 64 bits? Essayer:

Sudo apt-get install ia32-libs

J'ai eu le même problème en essayant de compiler le noyau Raspberry Pi. Je faisais de la compilation croisée sur Ubuntu 12.04 64 bits et la chaîne d'outils nécessite ia32-libs pour fonctionner sur un système 64 bits.

Voir http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/

19
Stacey Richards

fixe, en utilisant:

Sudo apt-get install gcc-arm*
18
Ahmed Mkaouar

La convention CodeSourcery consiste à utiliser le préfixe arm-none-linux-gnueabi- pour tous les exécutables, pas gcc-arm-linux-gnueabi que vous mentionnez. Ainsi, le nom standard de CodeSourcery gcc serait arm-none-linux-gnueabi-gcc.

Après avoir installé CodeSourcery G ++, vous devez ajouter le répertoire CodeSourcery dans votre PATH.

En général, je préfère installer CodeSourcery dans un répertoire comme /opt/arm-2010q1 ou quelque chose comme ça. Si vous ne savez pas où vous l'avez installé, vous pouvez le trouver en utilisant locate arm-none-linux-gnueabi-gcc, mais vous devrez peut-être forcer la mise à jour de votre base de données de localisation à l'aide de Sudo updatedb avant locate fonctionnera correctement.

Après avoir identifié où votre CodeSourcery est installé, ajoutez-le à votre PATH en modifiant ~/.bashrc comme ça:

PATH=/opt/arm-2010q1/bin:$PATH

De plus, il est habituel et très pratique de définir

CROSS_COMPILE=arm-none-linux-gnueabi-

dans votre .bashrc, car avec CROSS_COMPILE défini, la plupart des outils utiliseront automatiquement le compilateur approprié pour la compilation ARM sans que vous ne fassiez rien.

11
mvp

si vous utilisez un système d'exploitation 64 bits, vous devez installer ces bibliothèques supplémentaires.

Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
7
Jeegar Patel

a obtenu la même erreur lors de la tentative de compilation croisée du noyau Raspberry Pi sur Ubunto 14.04.03 64 bits sous VM. la solution a été trouvée ici :

-Installer les packages utilisés pour la compilation croisée sur la boîte Ubuntu.

Sudo apt-get install gcc-arm-linux-gnueabi make git-core ncurses-dev

-Téléchargez la chaîne d'outils

cd ~
git clone https://github.com/raspberrypi/tools

-Ajoutez la chaîne d'outils à votre chemin

PATH=$PATH:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin

remarquez la version x64 dans la commande path

7
axodus

J'étais également confronté au même problème et l'ai résolu après avoir installé la dépendance suivante:

Sudo apt-get install lib32z1-dev
5
sunil kumar singh

Si vous utilisez une version 64 bits d'ubuntu ou debian (voir par exemple `` cat/proc/version ''), vous devez simplement utiliser les compilateurs croisés 64 bits, si vous avez cloné

git clone https://github.com/raspberrypi/tools

alors les outils 64 bits sont en

tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64

utilisez ce répertoire pour la chaîne d'outils gcc. Un tutoriel utile pour la compilation que j'ai suivi est disponible ici Construction et compilation du noyau Raspberry Pi (utilisez le chemin -x64 ci-dessus comme $ {CCPREFIX})

3
RookieGuy

C'est un peu contre-intuitif. La chaîne d'outils s'appelle gcc-arm-linux-gnueabi. Pour appeler les outils, exécutez ce qui suit: arm-linux-gnueabi-xxx

où xxx est gcc ou ar ou ld, etc.

2
liteflier

Vous avez installé une chaîne d'outils qui a été compilée pour i686 sur une boîte qui exécute un espace utilisateur x86_64.

Utilisez une machine virtuelle i686.

1
strowger

essayez la commande suivante:

which gcc-arm-linux-gnueabi

Il est très probable que la commande soit installée dans /usr/bin.

1
user1055604