提问人:El-Zack0 提问时间:10/17/2023 更新时间:10/17/2023 访问量:35
为什么 SFML 2.6 会出现未定义的引用错误,而 SFML 2.5.1 却没有?
Why SFML 2.6 is making undefined reference errors but SFML 2.5.1 is not?
问:
我试图在代码块上配置 SFML 2.6 以进行游戏开发,但它在构建项目时给了我很多错误,绝大多数错误都是未定义的引用(类似于“对'__imp__ZN2sf6StringC1EPKcRKSt6locale'的未定义引用”)。
我在互联网上尝试了很多不同的解决方案和不同的IDE,但没有一个适合我。 但是当我尝试使用旧版本SFML 2.5.1时,问题就解决了,并且一切都运行良好(它也适用于SFML 2.3)。
问题是由于设置或链接错误造成的吗?还是库有一些错误?
这是我使用的代码:
#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;
}
这是编译命令:
{
"cmd": ["g++", "-std=c++17",
"-I", "C:\\SFML\\include",
"-L", "C:\\SFML\\lib",
"-o", "$file_base_name", "$file", "-lsfml-graphics", "-lsfml-window", "-lsfml-system"],
"selector": "source.cpp",
"working_dir": "$file_path",
"shell": true
}
它们都用于旧版本和新版本的SFML。
答: 暂无答案
评论
pacman