我试图从SFML页面编译示例 http://www.sfml-dev.org/tutorials/2.3/start-cb.php (at the bottom)
我下载了GCC 4.9.2 DW2的版本,设置了所需的一切(链接器,目录),并且编译时没有错误。
当应用程序启动时,它说它需要.dll文件,所以我从SFML / bin目录复制它们。
然后它说the procedure entry point __gxx_personality_v0 could not be located in the dynamic link library libstdc++-6.dll
(libstdc ++ - 6是从MinGW / bin复制的)
或the pro... _ZSt24__throw_out_of_range_fmtPKcz
在SFML页面上有一个注释:
Windows的GCC有多种变体,它们彼此不兼容(不同的异常管理,线程模型等)。确保选择与您使用的版本对应的包。如果您不确定,请检查MinGW / bin文件夹中存在哪个libgcc_s_sjlj-1.dll或libgcc_s_dw2-1.dll文件。如果MinGW与Code :: Blocks一起安装,你可能有一个SJLJ版本。 如果您认为您的GCC版本无法与预编译的SFML库一起使用,请不要自行构建SFML,但这并不复杂。
我尝试编译它与DevC ++和Code :: Blocks中的dw2和sjlj SFML版本链接 导致上面的错误。 我的编译器安装文件夹中有两个dll。我的IDE有问题吗?我厌倦了猜测新的IDE /编译器< - > SFML_version组合
后来我尝试使用cmake自己构建SFML - 当使用这些dll启动.exe时,我得到错误0xC000007B。
我试图静态链接它,我在链接器中按正确的顺序添加了所需的库,但它多次返回undefined reference to ...
(在两个IDE中)。
我只是想让程序运行,前几天我使用SDL库编译了其他示例而没有任何问题,它运行得很完美。
SFML所有尝试都是32位且编译器相同