我正在尝试使用Eclipse编译SFML 2.0教程。该程序编译良好,但当我运行它时,我收到以下错误:
/ home / eXistys / workspace / SFML / Debug / SFML:符号查找错误:/ home / eXistys / workspace / SFML / Debug / SFML:未定义符号:_ZN2sf12RenderStates7DefaultE
GCC C ++编译器>包括,我有:
/home/eXistys/SFML/include
在GCC C ++ Linker下我有:
这可能是什么?谷歌没有给出任何结果,SFML论坛没有任何用处,我找不到任何与stackoverflow真正相关的东西。
这是我成功编译的代码(this tutorial的源代码):
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(300, 200), "SFML works!");
sf::Text text("Hello SFML");
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(text);
window.display();
}
return 0;
}
我从这里下载了SFML 2.0的最新快照:https://github.com/LaurentGomila/SFML
亲切的问候,
答案 0 :(得分:2)
您缺少的是sf::RenderStates::Default
。它在RenderStates.cpp中声明,它应该是sfml-graphics的一部分。您确定,sfml-graphics是否与您的程序相关联? rpath设置正确吗?我假设您正在构建程序可执行文件而不是共享库,对吧?你试过LD_PRELOAD=/path/to/sfml-graphics/lib.so /path/to/program