0
我編譯.c文件並在2個不同的機器上生成cygwin中的.exe文件: 一個Windows 8 64位和另一個Windows 7 64位。不同的cygwin結果在2個不同的機器上:「不能執行二進制文件」
每一件事都是類似的:cygwin的,編譯命令:gcc -std=gnu99 -o .....
,在環境變量PATH,等,但.exe文件執行win7的計算機上,但Win8的機器上,我得到這個錯誤:
cannot execute binary file: Exec format error.
我運行file ./fileName
和結果是:
對於WIN7:
PE32+ executable (console) x86-64, for MS Windows
適用於Win8:
ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID ......, not stripped
這win8的輸出似乎表明你沒有建立一個Windows可執行文件。你確定編譯命令是一樣的嗎?編譯器(和編譯器版本)和編譯器工具鏈是一樣的嗎? –