SFML и C++ Уроки \ Разработка игр › Форумы › SFML Начало работы (подключение и настройка) › undefined reference to -сам собирал SFML
В этой теме 0 ответов, 1 участник, последнее обновление Dmy 2 года/лет, 3 мес. назад.
-
АвторСообщения
-
Приветствую товарищество! Скомпилял я завалявшийся у меня на диске код SFML; Виндовс семёрка, компилятор GCC, я просто открыл cmake, создал рядом с папкой исходников SFML папку SFML_release2, создал проект, открыл его в Code::Blocks IDE, компиляция произошла без ошибок.
Образовалась папка SFML_release2\lib, в ней libsfml-audio-s-d.a, libsfml-graphics-s-d.a, libsfml-main-d.a, libsfml-network-s-d.a, libsfml-system-s-d.a, libsfml-window-s-d.a.
Всё вроде правильно и всё выглядит в высшей степени верно.[CODE/]
#include<windows.h>
#include<wingdi.h>
//#include<SFML\Graphics.hpp>
#include”SFML\Graphics.hpp”
int main()
{
sf::RenderWindow window( sf::VideoMode(200,200), “Test!”);
sf::CircleShape MyCircle(100.f);
while(window.isOpen())
{
//
}
return 0;
}[/CODE]
Начинаю компиляцию своего проекта.
||=== Build: Debug in mario (compiler: GNU GCC Compiler) ===|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(WindowImplWin32.cpp.obj)||In functionZN2sf4priv15WindowImplWin32C2ENS_9VideoModeERKNS_6StringEjRKNS_15ContextSettingsE':|
GetDeviceCaps@8’|
D:\SFML\SFML-master\src\SFML\Window\Win32\WindowImplWin32.cpp|188|undefined reference to
D:\SFML\SFML-master\src\SFML\Window\Win32\WindowImplWin32.cpp|189|undefined reference toGetDeviceCaps@8’|
ZN2sf4priv10CursorImpl14loadFromPixelsEPKhNS_7Vector2IjEES5_':|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(CursorImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Window\Win32\CursorImpl.cpp|82|undefined reference toCreateDIBSection@24’|
CreateBitmap@20’|
D:\SFML\SFML-master\src\SFML\Window\Win32\CursorImpl.cpp|100|undefined reference to
D:\SFML\SFML-master\src\SFML\Window\Win32\CursorImpl.cpp|104|undefined reference toDeleteObject@4’|
DeleteObject@4’|
D:\SFML\SFML-master\src\SFML\Window\Win32\CursorImpl.cpp|123|undefined reference to
D:\SFML\SFML-master\src\SFML\Window\Win32\CursorImpl.cpp|124|undefined reference toDeleteObject@4’|
ZN2sf4priv12JoystickImpl11isConnectedEj':|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(JoystickImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Window\Win32\JoystickImpl.cpp|247|undefined reference tojoyGetPosEx@8’|
ZN2sf4priv12JoystickImpl17updateConnectionsEv':|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(JoystickImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Window\Win32\JoystickImpl.cpp|272|undefined reference tojoyGetPosEx@8’|
ZN2sf4priv12JoystickImpl4openEj':|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(JoystickImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Window\Win32\JoystickImpl.cpp|288|undefined reference tojoyGetDevCapsW@12’|
ZN2sf4priv12JoystickImpl6updateEv':|
D:\SFML\SFML_release2\lib\libsfml-window-s-d.a(JoystickImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Window\Win32\JoystickImpl.cpp|362|undefined reference tojoyGetPosEx@8’|
ZN2sf4priv9sleepImplENS_4TimeE':|
D:\SFML\SFML_release2\lib\libsfml-system-s-d.a(SleepImpl.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\System\Win32\SleepImpl.cpp|41|undefined reference totimeGetDevCaps@8’|
timeBeginPeriod@4’|
D:\SFML\SFML-master\src\SFML\System\Win32\SleepImpl.cpp|44|undefined reference to
D:\SFML\SFML-master\src\SFML\System\Win32\SleepImpl.cpp|50|undefined reference totimeEndPeriod@4’|
ZN2sf12RenderWindowC2Ev':|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|38|undefined reference tosf::Window::Window()’|
sf::Window::~Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|38|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj)||In functionZN2sf12RenderWindowC2ENS_9VideoModeERKNS_6StringEjRKNS_15ContextSettingsE':|
sf::Window::Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|46|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|49|undefined reference tosf::Window::create(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)’|
sf::Window::~Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|46|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj)||In functionZN2sf12RenderWindowC2EP6HWND__RKNS_15ContextSettingsE':|
sf::Window::Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|55|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|58|undefined reference tosf::Window::create(HWND__*, sf::ContextSettings const&)’|
sf::Window::~Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|55|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj)||In functionZN2sf12RenderWindowD2Ev':|
sf::Window::~Window()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|63|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|63|undefined reference tosf::Window::~Window()’|
ZN2sf12RenderWindow9setActiveEb':|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Graphics\RenderWindow.cpp|79|undefined reference tosf::Window::setActive(bool) const’|
sf::Window::create(sf::VideoMode, sf::String const&, unsigned int)’|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj):RenderWindow.cpp:(.rdata$_ZTVN2sf12RenderWindowE[__ZTVN2sf12RenderWindowE]+0x10)||undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj):RenderWindow.cpp:(.rdata$_ZTVN2sf12RenderWindowE[__ZTVN2sf12RenderWindowE]+0x14)||undefined reference tosf::Window::create(HWND__*)’|
sf::Window::close()’|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj):RenderWindow.cpp:(.rdata$_ZTVN2sf12RenderWindowE[__ZTVN2sf12RenderWindowE]+0x18)||undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj):RenderWindow.cpp:(.rdata$_ZTVN2sf12RenderWindowE[__ZTVN2sf12RenderWindowE]+0x24)||undefined reference tosf::Window::create(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)’|
sf::Window::create(HWND__*, sf::ContextSettings const&)’|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderWindow.cpp.obj):RenderWindow.cpp:(.rdata$_ZTVN2sf12RenderWindowE[__ZTVN2sf12RenderWindowE]+0x28)||undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(GLExtensions.cpp.obj)||In functionZN2sf4priv20ensureExtensionsInitEv':|
sf::Context::getFunction(char const*)’|
D:\SFML\SFML-master\src\SFML\Graphics\GLExtensions.cpp|55|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTarget.cpp.obj)||In functionisActive':|
sf::Context::getActiveContextId()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTarget.cpp|77|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTarget.cpp.obj)||In functionZN2sf12RenderTarget9setActiveEb':|
sf::Context::getActiveContextId()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTarget.cpp|398|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In functiondestroyStaleFBOs':|
sf::Context::getActiveContextId()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|61|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In functioncontextDestroyCallback':|
sf::Context::getActiveContextId()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|84|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In functionZN2sf4priv20RenderTextureImplFBOC2Ev':|
sf::GlResource::GlResource()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|123|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|128|undefined reference tosf::GlResource::registerContextDestroyCallback(void (*)(void*), void*)’|
sf::GlResource::~GlResource()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|123|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In functionZN2sf4priv20RenderTextureImplFBOD2Ev':|
sf::GlResource::TransientContextLock::TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|139|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|172|undefined reference tosf::Context::~Context()’|
sf::GlResource::TransientContextLock::~TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|139|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|137|undefined reference tosf::GlResource::~GlResource()’|
sf::GlResource::TransientContextLock::~TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|139|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|137|undefined reference tosf::GlResource::~GlResource()’|
ZN2sf4priv20RenderTextureImplFBO11isAvailableEv':|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|179|undefined reference tosf::GlResource::TransientContextLock::TransientContextLock()’|
sf::GlResource::TransientContextLock::~TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|179|undefined reference to
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|179|undefined reference tosf::GlResource::TransientContextLock::~TransientContextLock()’|
ZN2sf4priv20RenderTextureImplFBO27getMaximumAntialiasingLevelEv':|
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In function
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|191|undefined reference tosf::GlResource::TransientContextLock::TransientContextLock()’|
sf::GlResource::TransientContextLock::~TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|191|undefined reference to
D:\SFML\SFML_release2\lib\libsfml-graphics-s-d.a(RenderTextureImplFBO.cpp.obj)||In functionZN2sf4priv20RenderTextureImplFBO6createEjjjRKNS_15ContextSettingsE':|
sf::GlResource::TransientContextLock::TransientContextLock()’|
D:\SFML\SFML-master\src\SFML\Graphics\RenderTextureImplFBO.cpp|220|undefined reference to
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options…|
||=== Build failed: 50 error(s), 0 warning(s) (0 minute(s), 7 second(s)) ===|Первая ошибка int left = (GetDeviceCaps(screenDC, HORZRES) – static_cast<int>(mode.width)) / 2;
Кто кого и каким способом ищет? Как и почему не может найти? Как вообще-то происходит линковка?
Как вобще осслеживать такого плана ошибки? -
АвторСообщения
Для ответа в этой теме необходимо авторизоваться.