1. 程式人生 > >安裝交叉編譯工具arm-linux-gcc命令未找到的問題

安裝交叉編譯工具arm-linux-gcc命令未找到的問題

arm-linux-gcc-v 檢視交叉編譯工具版本號

$ arm-linux-gcc -v
arm-linux-gcc:未找到命令
$ cd /usr/local/arm/4.5.1/bin
$ ./arm-linux-gcc -v
bash: ./arm-linux-gcc: 沒有那個檔案或目錄
$ ./arm-none-linux-gnueabi-gcc -v
bash: ./arm-none-linux-gnueabi-gcc: 沒有那個檔案或目錄

是因為xubuntu系統是64位的,而ARM的交叉編譯工具是32的,需要安裝64位轉32的庫。

$ sudo apt-get install ia32-libs
正在讀取軟體包列表... 完成
正在分析軟體包的依賴關係樹
正在讀取狀態資訊... 完成
沒有可用的軟體包 ia32-libs,但是它被其它的軟體包引用了。
這可能意味著這個缺失的軟體包可能已被廢棄,
或者只能在其他釋出源中找到
然而下列軟體包會取代它:
  lib32ncurses5 lib32z1

E: 軟體包 ia32-libs 沒有可安裝候選
$ sudo apt-get install lib32ncurses5
正在讀取軟體包列表... 完成
正在分析軟體包的依賴關係樹
正在讀取狀態資訊... 完成
下列軟體包是自動安裝的並且現在不需要了:
  linux-headers-4.4.0-31 linux-headers-4.4.0-31-generic linux-headers-4.4.0-64 linux-headers-4.4.0-64-generic linux-headers-4.4.0-66 linux-headers-4.4.0-66-generic linux-image-4.4.0-31-generic linux-image-4.4.0-64-generic
  linux-image-4.4.0-66-generic linux-image-extra-4.4.0-31-generic linux-image-extra-4.4.0-64-generic linux-image-extra-4.4.0-66-generic
使用'sudo apt autoremove'來解除安裝它(它們)。
將會同時安裝下列軟體:
  lib32tinfo5 libc6-i386
下列【新】軟體包將被安裝:
  lib32ncurses5 lib32tinfo5 libc6-i386
升級了 0 個軟體包,新安裝了 3 個軟體包,要解除安裝 0 個軟體包,有 183 個軟體包未被升級。
需要下載 2,513 kB 的歸檔。
解壓縮後會消耗 11.2 MB 的額外空間。
您希望繼續執行嗎? [Y/n] y
$ sudo apt-get install lib32z1
正在讀取軟體包列表... 完成
正在分析軟體包的依賴關係樹
正在讀取狀態資訊... 完成
下列軟體包是自動安裝的並且現在不需要了:
  linux-headers-4.4.0-31 linux-headers-4.4.0-31-generic linux-headers-4.4.0-64 linux-headers-4.4.0-64-generic linux-headers-4.4.0-66 linux-headers-4.4.0-66-generic linux-image-4.4.0-31-generic linux-image-4.4.0-64-generic
  linux-image-4.4.0-66-generic linux-image-extra-4.4.0-31-generic linux-image-extra-4.4.0-64-generic linux-image-extra-4.4.0-66-generic
使用'sudo apt autoremove'來解除安裝它(它們)。
下列【新】軟體包將被安裝:
  lib32z1
升級了 0 個軟體包,新安裝了 1 個軟體包,要解除安裝 0 個軟體包,有 183 個軟體包未被升級。
需要下載 52.2 kB 的歸檔。
解壓縮後會消耗 162 kB 的額外空間。

相關的庫安裝完成,檢查交叉編譯工具是否可用:

$arm-linux-gcc -v
Using built-in specs.
COLLECT_GCC=arm-linux-gcc
COLLECT_LTO_WRAPPER=/usr/local/arm/4.5.1/bin/../libexec/gcc/arm-none-linux-gnueabi/4.5.1/lto-wrapper
Target: arm-none-linux-gnueabi
Configured with: /work/toolchain/build/src/gcc-4.5.1/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.5.1 --with-sysroot=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --enable-languages=c,c++ --disable-multilib --with-cpu=arm1176jzf-s --with-tune=arm1176jzf-s --with-fpu=vfp --with-float=softfp --with-pkgversion=ctng-1.8.1-FA --with-bugurl=http://www.arm9.net/ --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --with-gmp=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpfr=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-ppl=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-cloog=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-mpc=/work/toolchain/build/arm-none-linux-gnueabi/build/static --with-libelf=/work/toolchain/build/arm-none-linux-gnueabi/build/static --enable-threads=posix --with-local-prefix=/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root --disable-nls --enable-symvers=gnu --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.5.1 (ctng-1.8.1-FA)
交叉編譯工具可用。