błąd przy kompilacji programu z SFML

0

Kopiuje program ze strony http://cpp0x.pl/kursy/Kurs-SFML-C++/Podstawy-pierwsza-aplikacja-SFML/328
i przy kompilacji wyskakuje pełno błędów o treści UNDEFINED REFERENCE TO xyxyxyxyxyxy

#include <SFML/Window.hpp>

int main()
{
    sf::Window oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "Kurs SFML - http://cpp0x.pl" );
    while( oknoAplikacji.IsOpened() )
    {
        oknoAplikacji.Display();
    }
    return 0;
}
 
0

A opcje linkera ustawiłeś? Dołączasz odpowiednie biblioteki?

0

No biblioteka jest #include <SFML/Window.hpp> pisze że tylko ta trzeba dołączyć.
Opcje linkera ?
W pomocy instalacji było

Copy SFML-x.y\include\SFML to the \include directory of your Code::Blocks installation (so that you obtain include\SFML)
Copy the *.a files in SFML-x.y\lib to the \lib directory of your Code::Blocks installation

Przekopiowałem, potem zrobiłem to:

http://www.sfml-dev.org/tutorials/1.6/images/start-cb-include-path.png
http://www.sfml-dev.org/tutorials/1.6/images/start-cb-lib-path.png

0

#include to żadna biblioteka. To tylko nagłówek. Kopiowanie nagłówków i plików a/lib/dll/ do instalacji IDE to niemądra rzecz, po to się ustawia odpowiednie ścieżki w opcjach projektu (co pokazują screeny). Skoro ustawiłeś te ścieżki to po co kopiowanie? Poza tym Code::Blocks ma jakieś magiczne ustawienia dot. bibliotek, wystarczy chyba wybrać, że projekt z niej korzysta. Jeżeli do wyboru nie ma SFML to zapewne można taki wpis stworzyć samemu. Z całą pewnością jednak brakuje Ci po prostu opcji linkera, czyli opcji -lcostam.

0

Przede wszystkim zainstaluj najnowszego SFMLa ze strony oficjalnej i tam korzystaj z dokumentacji i tutoriali, SMFL 1.6 jest jużstary, aktualnie polecam 2.0, niby jeszcze RC ale juz gotowy :)

0

Wgrałem 2.0 potem otworzyłem nowej pusty projekt i kompilacja przebiegła pomyślnie aczkolwiek program otwarł się w konsoli. Otwarłem go potem w WIN32 GUI PROJECT i tam otwiera się konsola oraz program w okienku, jednak po 1 kompilacji nie można już edytować kodu, tzn. kompilacja nie powoduje zmian i program otwiera się tak jak po 1 kompilacji.

0

mam code::blocks a kod jest dobry bo specjalnie dodawałem np. cout dla testu.

0

Ja przygotowałem sobie template w Code::Blocks z działającym i ustawionym projektem i z tego korzystam za każdym razem ;)
Otwórz pusty projekt i przygotuj z tutoriala SFML 2.0, dodając w opcjach linkera odpowiednie rzeczy, jest wsio na stronie opisane. Jak zrobisz działający projekt, zapisz go jako template i korzystaj do woli :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1