2014-03-02 32 views
4

也许我失去了一些东西显而易见的,因为我在网上搜索了好一阵子,但无法找到以下问题的解决方案:Eclipse CDT的调试不是可执行文件格式:草莓安装后文件格式无法识别

我使用Eclipse Kepler SP2(Build id:20140224-0627),CDT和MinGW作为编译器后端。使用gdb调试C代码在今天工作良好(至少我今天注意到了这个问题)。 现在,我得到了以下错误消息时,我想在调试器开始编程':

Error in final launch sequence 
Failed to execute MI command: 
-file-exec-and-symbols C:/[...]/Debug/test.exe 
Error message from debugger back end: 
"C:\[...]\Debug\test.exe": not in executable format: File format not recognized 

程序运行很好,所以我想我可能会搞砸了一些设置。但是当我试图调试一个旧程序时,一切都奏效,直到我重新编译旧程序 - >同样的问题。如果我要求C-wizard使用MinGW创建一个新的“Hello World”ANSI C应用程序,则会出现同样的问题。

其中使用的编译命令

gcc -O0 -g3 -Wall -c -fmessage-length=0 -o "src\\test.o" "..\\src\\test.c" 
gcc -o test.exe "src\\test.o" 

我没有更新之间MinGW的我,但更新的Eclipse。

你有什么关于在哪里寻找问题的指针?

编辑:我刚刚检查了二进制类型:我的旧项目都是[x86/le],新编译的是[amd64/le]。这应该是一个跟踪....将根据进度更新发布。

EDIT2哎呀我装草莓perl的前几天,并且安装程序已经改变了原点构建系统的环境变量MINGW_HOMEc:\strawberry\c这搞砸了我的构建。重置为我的c:\MinGW解决了这个问题。 我会把它作为答案发布。标题和标签已更新,以更直接地指出此问题。

回答

5

我几天前安装了草莓perl,安装程序已经将源代码BUILD SYSTEM中的环境变量MINGW_HOME更改为c:\strawberry\c,这就搞砸了我的构建。重置为我的c:\MinGW解决了这个问题。

BTW:发生这种情况,因为草莓在我的自定义c:\MinGW前添加了c:\strawberry\c到PATH,而eclipse将这些添加到BUILD SYSTEM变量中。

0

它应该是一个解析器问题,在Project/Properties/Build/Settings下的二进制解析器是什么?

+0

这是“PE Winwods Parser”,我尝试了其他一些,但问题依然存在。 – OBu

+0

草莓perl搞砸了我的配置 - 感谢您的答案,至少这是解决问题的起点。 – OBu

相关问题