[C++][SFML] Undefined reference
Ostatnio zmodyfikowano 2018-04-13 01:53
twoxu Temat założony przez niniejszego użytkownika |
[C++][SFML] Undefined reference » 2018-04-13 00:26:58 Podczas kompilacji mojego projektu wyskakuje
obj\Debug\functions.o||In function `Z9createMapNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE':| C:\adres\functions.cpp|12|undefined reference to `sf::Image::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'| C:\adres\functions.cpp|13|undefined reference to `sf::Texture::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sf::Rect<int> const&)'| obj\Debug\main.o||In function `main':| C:\adres\main.cpp|36|undefined reference to `sf::Texture::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sf::Rect<int> const&)'| C:\adres\main.cpp|42|undefined reference to `sf::Image::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'| C:\adres\main.cpp|63|undefined reference to `sf::Texture::loadFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sf::Rect<int> const&)'| C:\adres\main.cpp|82|undefined reference to `sf::String::String(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::locale const&)'| obj\Debug\pathfind.o||In function `Z8viewPathSt6vectorIN2sf7Vector2IiEESaIS2_EERNS0_5ImageE':| C:\adres\pathfind.cpp|72|undefined reference to `sf::Image::saveToFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'| obj\Debug\pathfind.o||In function `Z8Pathfindiiii':| C:\adres\pathfind.cpp|115|undefined reference to `sf::Image::saveToFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'| C:\adres\pathfind.cpp|149|undefined reference to `sf::Image::saveToFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'| ||error: ld returned 1 exit status| ||=== Build failed: 10 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| const&) const'|
Postanowiłem dziś zaktualizować Code::Blocks z 16.12 na 17.12 wraz z kompilatorem MinGW (gcc --version zwraca gcc (tdm-1) 5.1.0). Mam bibliotekę SFML-2.4.2-windows-gcc-4.9.2-tdm-32-bit i prawdopodobnie to jest przyczyna. Chciałem zaktualizować Code::Blocks wraz z kompilatorem bo liczyłem że zostanie naprawiony błąd z debuggerem który znalazłem oraz brak std::to_string. Jeżeli się okaże że muszę zmienić wersję kompilatora spowrotem na 4.9.2 to jak do niego dodać obsługę std::to_string? |
|
pekfos |
» 2018-04-13 00:31:19 Skompiluj SFMLa. |
|
twoxu Temat założony przez niniejszego użytkownika |
» 2018-04-13 01:53:24 Skompilowałem SFML-master i po wykonaniu wszystkich kroków i załączeniu do mojego projektu, wywaliło 258 błędów (mój kod nawet by tylu nie pomieścił, więc to nie moja wina). Chyba jednak będę musiał poczekać na jakieś bugfixy. EDIT: to chyba jednak była moja wina, źle połączyłem biblioteki, ale teraz jest błąd z libstdc++-6.dll, który zazwyczaj występuje gdy jest niezgodna wersja kompilatora z biblioteką. Ja skompilowałem SFML tym samym kompilatorem co mam załączony w Code::Blocks (gcc (tdm-1) 5.1.0) więc nie powinno być problemów. EDIT2: Naprawiłem jakoś. Nigdy więcej nie próbować kompilować bibliotek C++ o 4 w nocy, po pijaku, i robić to po raz pierwszy w życiu. Przynajmniej na to ostatnie mam gwarant, bo nie da się wielokrotnie czegoś robić pierwszy raz. Zamykam temat.
|
|
« 1 » |