Mijn proc info:
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
Ik heb geprobeerd:
sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi
Als ik ga voor:
arm-linux-gcc arm-linux-gcc: command not found
Hoe installeer ik cross-compiler?
Opmerkingen
Answer
TLDR
je moet arm-linux-gnueabi-gcc
niet arm-linux-gcc
.
Het lijkt erop dat je zojuist de verkeerde bestandsnaam hebt gekregen. Ter referentie apt-file
is een handig hulpmiddel.
sudo apt-get install apt-file sudo apt-file update apt-file search -x "gcc$" | grep "gcc-arm-linux-gnueabi"
Hiermee wordt gezocht naar elk bestand dat eindigt op gcc
in elk pakket met gcc-arm-linux-gnueabi
in de naam. Het resultaat is:
gcc-arm-linux-gnueabi: /usr/bin/arm-linux-gnueabi-gcc
Dus als je geïnstalleerd gcc-arm-linux-gnueabi
zou je een bestand /usr/bin/arm-linux-gnueabi-gcc
moeten hebben.
Reacties
- Weten dat je moet zoeken naar
arm-linux-gnueabi
betekent dat je het antwoord al weet ;-).apt-file search -x 'arm-linux.*gcc$'
zou beter vindbaar zijn. - Waar. Het stond in de vraag van OP ' s onder " Ik heb geprobeerd … " maar zoals je zegt, als je ' niet weet, is goede kennis van reguliere expressies ook nuttig.
- Mijn punt is dat het OP niet wist welk commando uit te voeren, dus ik wist niet waar ik naar moest zoeken in de inhoud van het pakket (in tegenstelling tot pakketnamen).
- Ik had hier geen voorkennis van voordat ik het zelf probeerde te vinden. De zoekopdracht in mijn antwoord is opgebouwd uit het pakket dat ze al hebben geïnstalleerd en
gcc
aan het einde van de commandonaam – een generalisatie van wat ze al aan het proberen waren (arm-linux-gcc
) – Het was het eerste dat ik probeerde. - Ik denk dat ik het gewoon verrassend vind om
apt-file search
te gebruiken om naar een pakketnaam te zoeken (zoals je het zegt, “Dit doorzoekt alle pakketten naar een bestand of pakket datarm-linux-gnueabi
” “bevat) wanneerapt-file search
alleen de inhoud van het pakket doorzoekt (die vindt ook incidenteel pakketnamen, dankzij/usr/share/doc/<package>/copyright
).
Antwoord
Zoals steeldriver suggereert, heb je de cross-compiler al geïnstalleerd; het probleem is dat je het verkeerde commando gebruikt om het op te roepen, je moet in het algemeen het voorvoegsel arm-linux-gnueabi-
gebruiken. Dus draai
arm-linux-gnueabi-gcc
of
arm-linux-gnueabi-g++
en het zou goed moeten werken.
Om dit zelf uit te zoeken, kun je dpkg -L
gebruiken om de inhoud van de pakketten die je hebt geïnstalleerd weer te geven:
dpkg -L gcc-arm-linux-gnueabi
arm-linux-gnueabi-gcc