安裝交叉編譯工具arm-linux-gcc命令未找到的問題
阿新 • • 發佈:2019-02-07
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)
交叉編譯工具可用。