Nyt sitten kysyn tätä täältä, ei mistän löydy valmiiksi opasta(ainaskaa suomeks, ku enkun taito o vie huono).
Ja itse asiaan. Eli löytyykö mistään suomenkielistä opasta sdl_image kirjaston asennukseen dev-c++, jos ei osaisiko putkan väki auttaa. Tai jotain muuta tapaa saada jpg kuvat toimimaan.
Ainakaan google ei osannu mun hakusanoilla.
http://old.devpaks.org/show.php?devpak=142
->download
Kannattaa tutkiskella devc++:san päivityssysteemin listoja. Sieltä löytää suuren osan paketeista joita saa...
No meitsin neuvolla onnistui asennus, mutta ei toimi vielä
Ilmoittaa vaan:
C:\Dev-Cpp\kaikki.o(.text+0x64) In function `SDL_main': [Linker error] undefined reference to `IMG_Load' C:\Dev-Cpp\kaikki.o(.text+0x64) ld returned 1 exit status C:\Dev-Cpp\Makefile.win [Build Error] [sdl_test.exe] Error 1
includet näyttää tältä:
#include <SDL/SDL.h> // sisällytetään SDL:n otsikkotiedostot #include <SDL/SDL_image.h> #include <jpeglib.h>
ja IMG_load kohta:
kuva = IMG_Load("rsmap.jpg");
Itse en oikein käsitä virhettä.
Virhe ei ole koodissa vaan linkityksessä. Mitä parametreja olet antanut linkitettäessä, tai jättänyt antamatta?
Tää homma menee vieläkin yli hilseen en tajua tuota linkitys juttua. Ainoa mitä tuolla SDL_image:lla haen on jpg kuvien käyttö. Ja jos kysetti miksi? Niin mitä eroa 3090x2578 kuvalla bmp:nä tai jpg:nä.
Mutta tuo linkitys?
Lyhyesti:
Kun sisällytytät ohjelmaasi jonkin kirjaston otsikkotietostot tyyliin:
#include <kirjasto>
, niin sillä vain kerrotaan, että ko. kirjaston funktioita on mahdollista käyttää ohjelmassasi. Ohjelmaa käännettäessä täytyy vielä linkittää kyseisen kirjaston funktiot oman koodisi kanssa yhdeksi klöntiksi, jolloin syntyy toimiva kokonaisuus.
Siispä etsi Dev-C++:ssa Project Options > Parameters-välilehti > Linker-tekstilaatikko, ja kirjoita siihen seuraavanlainen litanja:
-lmingw32 -lSDL_image -lSDLmain -lSDL
Tuossa siis linkitetään ohjelmaan tiedostot libmingw32.a, libSDL_image.a, libSDLmain.a sekä libSDL.a. Näistä kaksi viimeistä ovat SDL:n omia kirjastotiedostoja, toinen on SDL_image, ja ensimmäinen ei välttämättä edes pakollinen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.