Strona 1 z 1

[C++][SFML] Ładowanie obrazu z pliku.

: 11 kwie 2012, o 12:49
autor: Tomix91
Witam mam problem z ładowaniem obrazu z pliku w bibliotece SFML:

Kod: Zaznacz cały

Image obraz;
obraz.LoadFromFile("obraz.jpg");

Mam taki kod, i w ogóle mi nie wykrywa obrazu, jak dodam:

Kod: Zaznacz cały

 obraz.LoadFromFile("/obraz.jpg");

to wywala mi:

Kod: Zaznacz cały

Failed to  load image "/obraz.jpg"- Reason : Unable to open file
Obraz znajduje się w folderze z plikiem .exe, mam Code Block'a i nie wiem co jest nie tak.

[C++][SFML] Ładowanie obrazu z pliku.

: 11 kwie 2012, o 18:55
autor: Afish
A plik na pewno znajduje się w folderze uruchomieniowym programu? Jaki system? Ścieżka /obraz.jpg i obraz.jpg to zupełnie inne ścieżki.

[C++][SFML] Ładowanie obrazu z pliku.

: 11 kwie 2012, o 21:17
autor: zhtk
Ten pierwszy kod jest prawidłowy.
1. Podmieniłeś kompilator na nowszy? Wrzuć do ustawień linkera -static-libgcc, w przeciwnym przypadku podczas uruchamiania pliku będzie wyskakiwał błąd o braku biblioteki dll.
2. Uruchom program nie z poziomu kompilatora, tylko wejdź do katalogu z skompilowanym projektem (release lub debug) i zobacz czy tam masz plik z obrazem. Następnie normalnie uruchom skompilowany program (klikasz 2 razy na plik .exe). Takich programów nie uruchamia się z poziomu CodeBlocksa z powodu różnych niuansów związanych z katalogiem roboczym (po dokładniejsze informacje odsyłam do msdn- shellexec, w którego argumentach podajesz ścieżkę do katalogu roboczego, domyślnie jest on ustawiony na mingw/bin).-- 11 kwi 2012, o 21:17 --Ten pierwszy kod jest prawidłowy.
1. Podmieniłeś kompilator na nowszy? Wrzuć do ustawień linkera -static-libgcc, w przeciwnym przypadku podczas uruchamiania pliku będzie wyskakiwał błąd o braku biblioteki dll.
2. Uruchom program nie z poziomu CodeBlocks, tylko wejdź do katalogu z skompilowanym projektem (release lub debug) i zobacz czy tam masz plik z obrazem. Następnie normalnie uruchom skompilowany program (klikasz 2 razy na plik .exe). Takich programów nie uruchamia się z poziomu CodeBlocksa z powodu różnych niuansów związanych z katalogiem roboczym (po dokładniejsze informacje odsyłam do msdn- shellexec, w którego argumentach podajesz ścieżkę do katalogu roboczego, domyślnie jest on ustawiony na mingw/bin).

[C++][SFML] Ładowanie obrazu z pliku.

: 12 kwie 2012, o 22:40
autor: Tomix91
Dzięki za odpowiedź, działam na Windowsie 7. Próbowałem wrzucić do linkera tą bibliotekę ale wyskakuje mi takie coś:

Kod: Zaznacz cały

 cannot find -lstatic-libgcc 
mam bibliotekę libgcc_s_dw2-1.dll w system32 i w plikach bin, debug mojego projektu, nie mam pojęcia dlaczego jej nie widzi.

[C++][SFML] Ładowanie obrazu z pliku.

: 13 kwie 2012, o 15:26
autor: zhtk
Bez l - to nie jest biblioteka, a opcja linkera, która zaszywa ten dll o którym napisałeś w pliku exe. Jeżeli ta opcja nie zadziała, to zamień kolejność słów na -libgcc-static