问题描述
我的过程信息:
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
我试过了:
sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi
如果我去:
arm-linux-gcc
arm-linux-gcc: command not found
如何安装cross-compiler?
最佳思路
TLDR
您需要调用arm-linux-gnueabi-gcc
而不是arm-linux-gcc
。
您似乎输入了错误的文件名。供参考,apt-file
是有用的工具。
sudo apt-get install apt-file
sudo apt-file update
apt-file search -x 'gcc$' | grep 'gcc-arm-linux-gnueabi'
这将搜索名称中具有gcc-arm-linux-gnueabi
的任何程序包中以gcc
结尾的任何文件。结果是:
gcc-arm-linux-gnueabi: /usr/bin/arm-linux-gnueabi-gcc
因此,如果您安装了gcc-arm-linux-gnueabi
,则应该有一个文件/usr/bin/arm-linux-gnueabi-gcc
。
次佳思路
正如steeldriver所建议的那样,您已经安装了cross-compiler。问题是您使用了错误的命令来调用它,通常需要使用arm-linux-gnueabi-
前缀。所以跑
arm-linux-gnueabi-gcc
要么
arm-linux-gnueabi-g++
它应该可以正常工作。
为了自己解决这个问题,您可以使用dpkg -L
列出已安装软件包的内容:
dpkg -L gcc-arm-linux-gnueabi