我是 C++ 新手并尝试学习游戏编程,我选择 SFML 并在 Jetbrain 的 CLion 上运行并使用 Ubuntu 机器。我在这里遵循本教程SFML 和 Linux 我的代码:
#include <SFML/Graphics.hpp>
using namespace sf;
int main() {
RenderWindow window(sf::VideoMode(200, 200), "SFML Work!");
CircleShape shape(100.f);
shape.setFillColor(Color::Green);
while (window.isOpen()) {
Event event;
while (window.pollEvent(event)) {
if (event.type == Event::Closed) {
window.close();
}
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
当我在 CLion 上运行时出错
CMakeFiles/SFMLBasic.dir/main.cpp.o: In function `main':
undefined reference to `sf::String::String(char const*, std::locale const&)'
undefined reference to `sf::VideoMode::VideoMode(unsigned int, unsigned int, unsigned int)'
undefined reference to `sf::RenderWindow::RenderWindow(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)'
...
undefined reference to `sf::Shape::~Shape()'
我如何配置或设置在 CLion 中运行 SFML,我不知道 CMAKE 能做到吗?我只通过终端运行,如果我运行这个命令就可以了。
g++ -c main.cpp
g++ main.o -o sfml-app -lsfml-graphics -lsfml-window -lsfml-system
./sfml-app
如何在终端中每次都配置为使用所有参考变量而无需手动操作?谢谢。