我今天从头开始安装SFML所以我可以开始游戏了。我下载了源代码,运行sudo make install
,尝试编译我的一个旧项目,但我无法正确链接。所以我尝试运行一个更简单的项目:教程中的一个示例。我特意尝试编译this one,但是我收到了这些错误:
g++ -o atest test.cpp -lsfml-graphics -lsfml-window -lsfml-system /tmp/ccaa86fR.o: In function `main':
test.cpp:(.text+0x1d2): undefined reference to `gluPerspective'
collect2: ld returned 1 exit status
make: *** [test] Error 1
尝试even simpler project,初始教程中的那个,我不会遇到编译问题。但是,当我尝试运行它时,我收到此错误:
./atest: error while loading shared libraries: libsfml-graphics.so.1.6: cannot open shared object file: No such file or directory
我检查过,文件安装到/ usr / local / lib /这是他们应该知道的地方。我在这里做错了什么?
答案 0 :(得分:2)
-lGLU
应该修复第一个错误,对于第二个错误,请确保{ldconfig搜索路径中的/usr/local/lib/
(Ubuntu下的/etc/ld.so.conf
和/etc/ld.so.conf.d/*
)并且您运行了ldconfig:sudo ldconfig -v
然后再次尝试运行。
另见man ldconfig