编译好但是"你好世界"不起作用

时间:2013-03-02 14:35:13

标签: windows console makefile g++ freeze

我正在使用g ++来编译一个小项目,它只是编译得很好。

当我从控制台运行exe时,它只是冻结并且什么都不打印(我必须从任务管理器关闭它)。

我将main更改为一个简单的“hello world”(使用原始makefile编译它),问题仍然存在。

然后我发现如果我用g++ -c main.cpp g++ -o main.o编译它(helloworld版本)它实际上是有效的。

所以问题似乎在链接器的某处可能。

我将发布Makefile:

exe: main
    g++ -L"C:/SFML-1.6/lib" -o platform01 main.o P3d_Camera.o P3d_Entity.o P3d_InputManager.o P3d_Math.o P3d_Object.o P3d_Renderer.o P3d_Timer.o P3d_Window.o utils.o -lsfml-graphics -lsfml-window -lsfml-system -lglu32 -lopengl32
main:
    g++ -c -Wall -I"C:/SFML-1.6/include" main.cpp
    g++ -c -Wall -I"C:/SFML-1.6/include" core/P3d_Camera.cpp core/P3d_Entity.cpp core/P3d_InputManager.cpp core/P3d_Math.cpp core/P3d_Object.cpp core/P3d_Renderer.cpp core/P3d_Timer.cpp core/P3d_Window.cpp core/utils.cpp
clean:
    rm *.o platform01.exe

和main.cpp:

#include "stdio.h"
#include "proch3d.h"

int main() {
    printf("helloworld\n");

    return 0;
}

P.S。在linux上它编译并运行完美

0 个答案:

没有答案