【问题标题】:Code::Blocks not compiling release for SFML projectCode::Blocks 没有为 SFML 项目编译发布
【发布时间】:2023-12-24 22:23:01
【问题描述】:

每当我尝试为任何 SFML 项目构建发布 .exe 时,都会收到以下消息:

-------------- Build: Release in SFMLPROJECT (compiler: GNU GCC Compiler) ---------------

mingw32-g++.exe -LC:\SFML-2.1\lib -o bin\Release\SFMLPROJECT.exe obj\Release\main.o  
-s  -lsfml-graphics -lsfml-window -lsfml-system -mwindows

Process terminated with status 0 (0 minute(s), 0 second(s))
0 error(s), 0 warning(s) (0 minute(s), 0 second(s))

当我查看 Release 文件夹时,它是空的。如果我尝试从 Code Blocks 运行项目,它会像这样“构建”,如下所示:

-------------- Run: Release in SFMLPROJECT (compiler: GNU GCC Compiler) ---------------

Checking for existence: C:\User\Desktop\C++\SFMLPROJECT\bin\Release\SFMLPROJECT.exe

...然后说:“这个项目好像还没有建好,你现在要建吗?”。如果我点击“是”,它只是再次“构建”而不实际构建任何东西。如果我点击“否”,它只会说执行失败,而取消当然什么也不做。

我已经尝试寻找解决方案,但我没有遇到任何问题。我也尝试使用另一个编译器(Digital Mars),但我仍然遇到同样的问题。调试一切正常。有谁知道这里发生了什么?

【问题讨论】:

    标签: c++ gcc release codeblocks sfml


    【解决方案1】:

    我见过一些人甚至无法使用 Code::Blocks 运行他们的第一个项目,因此我强烈建议您将其扔掉并改用 Visual C++。因为我假设你的最终目标不是成为 C++ 编译器和软件开发工具包的专家,而是通过你的产品向世界展示你的创造力。 (也许你甚至可以抛弃 C++ 来支持 Unity,但我不是这方面的专家。)

    如果您致力于使用 Code::Blocks,这些文章可能会有所帮助:

    (我建议您阅读它们,因为我对使用 MingW 的技巧有一般的了解)

    【讨论】:

    • 我认为您对 Code::Blocks 的看法可能是正确的。也就是说,我肯定会查看您的链接,因为我已经习惯了这种设置。谢谢!
    • 我认为告诉人们使用另一个 IDE 对他们没有多大帮助。尤其是当这么多人向 C++ 新手推荐 Code::Blocks 时。也就是说,即使 VS2013 没有(官方)SFML2.1,我也建议使用 Visual Studio。