我最近在我的linux機器上安裝了一個基於i686的mips-linux-gnu-gcc
crosstool。當我想編譯一些代碼時,它顯示了我的錯誤。bash:./mips-linux-gnu-gcc:無法執行二進制文件錯誤
每個安裝步驟之後http://developer.mips.com/tools/compilers/open-source-toolchain-linux/
我安裝的crosstool後,我寫了一個簡單的HelloWorld C文件是這樣的:
#include<stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
但是當我運行:
/mips-linux-gnu-gcc hello.c -o hello -static
編譯器只是打印錯誤:
bash: ./mips-linux-gnu-gcc: cannot execute binary file
我在想,也許我在某些步驟中犯了一些錯誤,但我無法弄清楚。
也許你們中的一些人可以幫助我,我對這個問題感到困惑。
是的,我正在運行一個32位主機,但你怎麼知道編譯器是一個64位可執行文件? – junjies
@ElvisShen:文件命令會告訴你: '$ file mips_linux_toolchain/bin/mips-linux-gnu-gcc mips_linux_toolchain/bin/mips-linux-gnu-gcc:ELF 64位LSB可執行文件,x86-64 ,版本1(GNU/Linux),動態鏈接(使用共享庫),用於GNU/Linux 2.6.18,沒有剝離「 –
謝謝!我已經成功運行了交叉工具! – junjies