使用 g++ 在 64 位 Win7 上链接 SFML-2.2
Linking SFML-2.2 On 64bit Win7 Using g++
>我使用以下命令编译了我的程序,该命令运行没有错误。
g++ -c main.cpp -I C:SFML-2.2include -std=c++11
然后,我尝试使用命令链接它:
g++ main.o -o sfml-app -L C:SFML-2.2lib -lsfml-graphics -lsfml-window -lsfml-system
这些是从上述命令返回的错误:
d:/mingw/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mi
ngw32/bin/ld.exe: skipping incompatible D:SFML-2.2lib/libsfml-graphics.a when
searching for -lsfml-graphics
d:/mingw/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mi
ngw32/bin/ld.exe: skipping incompatible D:SFML-2.2liblibsfml-graphics.a when
searching for -lsfml-graphics
d:/mingw/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mi
ngw32/bin/ld.exe: skipping incompatible D:SFML-2.2lib/libsfml-graphics.a when
searching for -lsfml-graphics
d:/mingw/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.9.1/../../../../x86_64-w64-mi
ngw32/bin/ld.exe: cannot find -lsfml-graphics
错误继续完全相同,但改为"在搜索 -lsfml-graphics 时跳过不兼容的 C:\SFML-2.2\lib\sfml-graphics.lib",与 -lsfml-system 相同。
项目文件夹位于:C:\Users\Andy\Desktop\SFMLTEST,SFML文件夹位于:D:\SFML-2.2
我现在已经按照他们网站上的推荐下载了适用于 32 位窗口的 SFML-2.2 和 GCC 4.9.2 MinGW (DW2( - 32 位,我有 g++ 版本:(GCC( 4.9.1
在 Windows 上,选择 32 位或 64 位库应基于哪个 您要为其编译的平台,而不是您拥有的操作系统。确实,你 可以在 32 位 Windows 上完美编译和运行 64 位程序。
现在我的问题是,上述错误是什么意思?我该如何修复它们?
编辑:几个月前找到了解决方案,在这里添加答案,因为它可能会帮助其他人。
我的问题的解决方案是:
g++ 想要 64 位库,而尽管网站推荐,我还是给了它 32 位库。
解决方案是下载并构建 64 位库。
相关文章:
- 尝试将 sfml 和 c++ 与 Windows 10 上的可移植 vscode 链接起来
- 静态链接 Visual Studio dll 到动态链接的 sfml 项目
- Cmake 在构建 sfml 时不链接
- 有没有办法在VSCode Mac中链接SFML库
- 使用静态SFML库时无法链接我的项目
- (Visual Studio)尝试用SFML库静态链接microsoft库时出现大量链接器错误
- MingW 静态库链接 - SFML 2.1.
- SFML 网络错误:链接时未定义的引用
- 过程入口点_ZSt24__throw_out_of_range_fmtPKcz不能位于动态链接库 sfml-graphi
- 在 Codelite 中链接 SFML,找不到库
- 使用 g++ 在 64 位 Win7 上链接 SFML-2.2
- 在 CodeLite 中链接 SFML
- C++链接sfml音频时未定义的引用
- C++ SFML游戏编程链接错误
- SFML 2.1代码::Blocks静态链接不工作
- 由于SFML框架,OS X上的链接器错误
- Visual Studio链接器在链接SFML-2.1时出错
- SFML 和 VS2013 - WinMain/main 链接器错误
- 链接SFML时出错.LNK2001
- 如何在eclipse cdt中动态链接sfml 2