所以今天早上我将我的 MinGW 编译器升级到 4.7.1(我相信是从 4.4.1),并且一直试图让旧项目重新构建和运行。但是,我的努力遇到了障碍,现在,每当我尝试编译使用 SFML 库的项目时,都会收到以下错误:
无法在动态链接库 libstdc++-6.dll 中找到过程入口点 __gxx_personality_v0
现在我知道这个问题之前已经讨论过,但不幸的是,建议的 hacky-fix 定义void *__gxx_personality_v0;
对我没有任何好处,我检查了我是否不小心使用了 GCC,但是 CodeBlocks 将 C++ 编译器设置为 MinGW 的 G++,不是 GCC(在 Settings->Compiler->Toolchain Executables->Program Files 下,我有mingw32-g++.exe
C++ 编译器)。所以这似乎不是问题。
我正在尝试编译的整个程序是SFML 网站的一个示例:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
现在,我尝试运行的每个 SFML 项目都会出现此问题,但小型非 SFML 项目似乎运行良好。
我可以尝试什么来解决这个问题?