SFML2应用程序找不到共享对象

时间:2012-11-22 19:02:47

标签: c++ sfml

我从git(调试,发布,静态和动态)下载并编译了SFML2,并使用以下方法成功编译了教程中的一些示例代码:

g++ main.cpp -lsfml-graphics -lsfml-window -lsfml-system

当我尝试运行二进制文件时出现问题,它找不到任何共享对象(libsfml-graphics.so.2,libsfml-window.so.2等)

我检查了它们,它们出现在/ usr / local / lib。

我错过了什么吗?

使用Fedora 17 x64和g ++ 4.7.2(如果那是相关的)

1 个答案:

答案 0 :(得分:2)

通常,动态链接器不会搜索

/usr/local/lib。将其添加到LD_LIBRARY_PATH

或者,将动态链接器配置为始终搜索/usr/local/lib/usr/local/lib64。这通常是通过添加/etc/ld.so.conf文件的路径并运行ldconfig

来完成的

有时也会出现32/64位问题,即一个尝试运行32位可执行文件,只存在64位库,反之亦然。运行file <somtething>.sofile <your-executable>以确定其架构。一般情况下,32位库转到<whatever>/lib,64位转到<whatever>/lib64,但有时它们最终会出错。