C++ 代码::块| SFML错误
我试图让SFML在code::blocks上工作,但每当我尝试测试示例代码时,总是会出现错误。我遵循了来自的教程,但它似乎不起作用 我不太擅长这个,所以如果有人能帮我,那就太棒了 以下是代码和错误的屏幕截图: 以下是错误:C++ 代码::块| SFML错误,c++,codeblocks,sfml,C++,Codeblocks,Sfml,我试图让SFML在code::blocks上工作,但每当我尝试测试示例代码时,总是会出现错误。我遵循了来自的教程,但它似乎不起作用 我不太擅长这个,所以如果有人能帮我,那就太棒了 以下是代码和错误的屏幕截图: 以下是错误: obj\Debug\test.o||In function `main':| C:\Users\Mads\Desktop\test\test.cpp|5|undefined reference to `sf::String::String(char const*, std::
obj\Debug\test.o||In function `main':|
C:\Users\Mads\Desktop\test\test.cpp|5|undefined reference to `sf::String::String(char const*, std::locale const&)'|
C:\Users\Mads\Desktop\test\test.cpp|5|undefined reference to `sf::VideoMode::VideoMode(unsigned int, unsigned int, unsigned int)'|
C:\Users\Mads\Desktop\test\test.cpp|5|undefined reference to `sf::RenderWindow::RenderWindow(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)'|
C:\Users\Mads\Desktop\test\test.cpp|6|undefined reference to `sf::CircleShape::CircleShape(float, unsigned int)'|
C:\Users\Mads\Desktop\test\test.cpp|5|undefined reference to `sf::RenderWindow::~RenderWindow()'|
C:\Users\Mads\Desktop\test\test.cpp|7|undefined reference to `sf::Color::Green'|
C:\Users\Mads\Desktop\test\test.cpp|7|undefined reference to `sf::Shape::setFillColor(sf::Color const&)'|
C:\Users\Mads\Desktop\test\test.cpp|15|undefined reference to `sf::Window::close()'|
C:\Users\Mads\Desktop\test\test.cpp|12|undefined reference to `sf::Window::pollEvent(sf::Event&)'|
C:\Users\Mads\Desktop\test\test.cpp|18|undefined reference to `sf::Color::Color(unsigned char, unsigned char, unsigned char, unsigned char)'|
C:\Users\Mads\Desktop\test\test.cpp|18|undefined reference to `sf::RenderTarget::clear(sf::Color const&)'|
C:\Users\Mads\Desktop\test\test.cpp|19|undefined reference to `sf::RenderStates::Default'|
C:\Users\Mads\Desktop\test\test.cpp|19|undefined reference to `sf::RenderTarget::draw(sf::Drawable const&, sf::RenderStates const&)'|
C:\Users\Mads\Desktop\test\test.cpp|20|undefined reference to `sf::Window::display()'|
C:\Users\Mads\Desktop\test\test.cpp|9|undefined reference to `sf::Window::isOpen() const'|
C:\Users\Mads\Desktop\test\test.cpp|23|undefined reference to `sf::RenderWindow::~RenderWindow()'|
C:\Users\Mads\Desktop\test\test.cpp|23|undefined reference to `sf::RenderWindow::~RenderWindow()'|
obj\Debug\test.o||In function `~CircleShape':|
C:\Users\Mads\Desktop\SFML-2.0\include\SFML\Graphics\CircleShape.hpp|42|undefined reference to `vtable for sf::CircleShape'|
C:\Users\Mads\Desktop\SFML-2.0\include\SFML\Graphics\CircleShape.hpp|42|undefined reference to `vtable for sf::CircleShape'|
C:\Users\Mads\Desktop\SFML-2.0\include\SFML\Graphics\CircleShape.hpp|42|undefined reference to `sf::Shape::~Shape()'|
||=== Build finished: 20 errors, 0 warnings ===|
我也有同样的问题,我必须做两个步骤来让它工作 1) 手动编译SFML,而不是使用打包版本 2) 在生成选项中将手动编译的版本添加到项目中
在此之前,即使我按照文档中的描述指定了所有内容,我也经常会遇到这些错误。您应该将以下内容添加到您的CB项目文件*.cbp中:
<Linker>
<Add library="GL" />
</Linker>
请在问题中输入代码。1) 它更容易阅读,人们可能想复制/粘贴它。但快速猜测,这是一个链接错误。有些东西没有设置为查找包含所有这些符号的库。我建议您回到创建和配置SFML项目下的步骤,并确保正确地遵循了所有步骤,特别是启动的部分。下一步是将应用程序链接到SFML库(.a文件)这是您的代码需要的。
谢谢您的回答。我将尝试重做所有内容,看看它是否工作。看起来您没有在code::blocks中为项目的构建选项中设置库文件。不过我已经设置了。顺便说一句,我只是从头做了一遍,每次我在程序中做一些事情时,它都会给我“环境错误”:在为GNU GCC编译器配置的搜索路径中找不到编译器可执行文件