如何在 Ubuntu 18.04 上安装交叉编译器?

Mik*_*sta 9 ubuntu cross-compilation

我的过程信息:

 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
Run Code Online (Sandbox Code Playgroud)

我试过:

sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi
Run Code Online (Sandbox Code Playgroud)

如果我去:

arm-linux-gcc
arm-linux-gcc: command not found
Run Code Online (Sandbox Code Playgroud)

如何安装交叉编译器?

Phi*_*ing 18

TLDR

你需要打电话arm-linux-gnueabi-gccarm-linux-gcc


看起来您刚刚弄错了文件名。供参考apt-file是一个有用的工具。

sudo apt-get install apt-file
sudo apt-file update
apt-file search -x 'gcc$' | grep 'gcc-arm-linux-gnueabi'
Run Code Online (Sandbox Code Playgroud)

这将搜索以名称gcc中的任何包结尾的任何文件gcc-arm-linux-gnueabi。结果是:

gcc-arm-linux-gnueabi: /usr/bin/arm-linux-gnueabi-gcc
Run Code Online (Sandbox Code Playgroud)

所以如果你已经安装了gcc-arm-linux-gnueabi你应该有一个文件/usr/bin/arm-linux-gnueabi-gcc.

  • 知道搜索 `arm-linux-gnueabi` 意味着已经知道答案;-)。`apt-file search -x 'arm-linux.*gcc$'` 会更容易被发现。 (5认同)

Ste*_*itt 10

正如steeldriver 所建议的,您已经安装了交叉编译器;问题是您使用错误的命令来调用它,您arm-linux-gnueabi-通常需要使用前缀。所以运行

arm-linux-gnueabi-gcc
Run Code Online (Sandbox Code Playgroud)

或者

arm-linux-gnueabi-g++
Run Code Online (Sandbox Code Playgroud)

它应该可以正常工作。

要自己弄清楚这一点,您可以使用dpkg -L列出已安装的软件包的内容:

dpkg -L gcc-arm-linux-gnueabi
Run Code Online (Sandbox Code Playgroud)