我尝试使用Codebloks Nightly svn 9916编译以下代码
#include "Main.h"
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!" << endl;
return 0;
}
从Codeblocks内部运行可执行文件,它会按预期返回Hello World!
。但是,如果可执行文件是从外部启动的,则会返回应用程序错误0xc000007b
。这意味着系统类型(32位或64位)不适合,或者可执行文件被破坏。但我不明白为什么从Codeblocks执行编译时没问题。
可执行文件本身是32位(x86),从32位或64位cmd运行它无法进行更改。
数据: Windows 7专业版64位 GNU GCC编译器
编辑:Workarround
将c ++库与可执行文件静态链接起作用。如果c ++标准库不可用,似乎windows无法执行它。
答案 0 :(得分:1)
静态链接C ++默认库。
只需将-static-libstdc++
添加到您的关联语句
答案 1 :(得分:0)
我建议您再次从statch设置您的编译器以查看是否导致该问题,我建议观看this video,它几乎描述了如何从第1步开始。