嗨运行SFML库在NetBeans我想补充SFML在C++图形项目,但是当我尝试运行索姆基本代码我得到这个错误:广东话在Ubuntu
免费():无效的指针: 0x00000000009ace48 ***
而在在c netbeans的性质++编译器我已经添加了SFML /包括文件夹中的包括目录
而下接头和附加库目录我有SFML/lib文件夹
和最后一个下链接器和库中,我已经按顺序添加了sfml-graphics-s-d,sfml-audio-s-d,sfml-network-s-d,sfml-window-s-d和sfml-system-s-d。
这是我想要运行的代码:
#include <cstdlib>
#include <SFML/Graphics.hpp>
/*
*
*/
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
的SFML窗口被打开和关闭直接,然后我得到:
运转完成;中止;倾倒核心;实时:240ms;用户:20ms;系统:30毫秒
,我告诉在启动
是否有任何人知道的错误,如果它已添加的库错误的,也可以是什么我。感谢您的帮助
编辑: 现在我已经通过使用makefile并将其写入文本编辑器来解决它,但我不知道我是否可以在netbeans中使用相同的方法?
这是我的makefile的外观和它的工作原理,但我希望能够做到这一切在NetBeans:
all:
g++ -std=c++11 *.cpp -o sfml-app -lsfml-graphics -lsfml-window -lsfml-system
clean:
rm -rf *.o sfml-app
我改为“-d”文件,但没有帮助,我该如何添加opengl库?为什么当我使用makefile时需要添加它? – romaswe
对于任何人来说,Google都会磕磕绊绊地回答这个问题,正如我所做的那样:SFML的-d文件是库的调试版本,与动态链接无关(例如sfml-window = dynamic linking,sfml-window-d = dynamic链接,调试版本,sfml-window-s =静态链接,sfml-window-sd =静态链接,调试版本)。 – SJFrK