首先貼出出錯提示資訊:
jello@kali:/usr/local/arm/2.95.3/bin$ arm-linux-
arm-linux-addr2line arm-linux-gasp arm-linux-protoize
arm-linux-ar arm-linux-gcc arm-linux-ranlib
arm-linux-as arm-linux-gcj arm-linux-readelf
arm-linux-c++ arm-linux-ld arm-linux-size
arm-linux-c++filt arm-linux-nm arm-linux-strings
arm-linux-g++ arm-linux-objcopy arm-linux-strip
arm-linux-g77 arm-linux-objdump arm-linux-unprotoize
jello@kali:/usr/local/arm/2.95.3/bin$ arm-linux-gcc -v
bash: /usr/local/arm/2.95.3/bin/arm-linux-gcc: 沒有那個檔案或目錄
1.確定當前系統的位寬:
通過使用uname -a可以得到當前linux系統的位寬,本人的kali2.0位寬資訊如下:
jello@kali:/usr/local/arm/2.95.3/bin$ uname -a
linux kali 4.0.0-kali1-amd64 #1 smp debian 4.0.4-1+kali2 (2015-06-03) x86_64 gnu/linux
從以上關鍵字x86_64可得本人的系統是64bit的
2.確定交叉編譯器的位寬:
2.1直接切換目錄到交叉編譯器的安裝目錄,本人的交叉編譯器安裝在/usr/local/arm/2.95.3/bin目錄下,所以:
jello@kali:~$ cd /usr/local/arm/2.95.3/bin/
2.2使用file命令檢視交叉編譯器arm-linux-gcc的檔案資訊
jello@kali:/usr/local/arm/2.95.3/bin$ file arm-linux-gcc
本人的查詢資訊如下:
jello@kali:/usr/local/arm/2.95.3/bin$ file arm-linux-gcc
arm-linux-gcc: elf 32-bit lsb executable, intel 80386, version 1 (sysv), dynamically linked, interpreter /lib/ld-linux.so.2, for gnu/linux 2.0.0, not stripped
由此即可知道交叉編譯器之所以不能執行的原因是沒有安裝32位庫的原因(在本人的kali2.0系統下,預設沒有安裝32位庫)
3.解決方案:安裝32位庫
本人kali2.0安裝32庫的命令如下:
jello@kali:/usr/local/arm/2.95.3/bin$ sudo apt-get install libc6-i386
海思的3516的交叉編譯工具無法執行
最近想編譯海思的hisi3516cv500的東西,但是安裝了編譯鏈之後發現無法執行,報錯如下 bash opt hisi linux x86 arm arm himix200 linux bin arm himix200 linux gcc cannot execute binary file ex...
交叉編譯工具
準備工具和系統 arm linux gcc 4.4.3.tar.gz arm linux gcc 4.4.3 使用者名稱 www.linuxidc.com 密碼 www.muu.cc 在 2011年linuxidc.com 10月 android系統移植 建立arm linux交叉編譯環境 ubun...
交叉編譯工具
arm linux gcc c o led.o led.s arm linux ld ttext 0 led.o o led.elf arm linux objcopy o binary s led.elf led.bin arm linux objdump d led.elf led.disarm...