Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: DLL:än sijoitus linuxissa?

Hakoulinen [03.06.2007 22:59:16]

#

Eli siis SDL_gfx:n DLL tarvisi sijoittaa tod. näk. johonkin päin jottei tulisi virheilmoitusta: "roope@linux-lzp4:~/Documents/SDL> g++ -o rotozoom rotozoom.cpp -lSDL
/tmp/cckddtCK.o: In function `main':
rotozoom.cpp:(.text+0x11e): undefined reference to `rotozoomSurface'
collect2: ld returned 1 exit status"

Vai meneekö tuossa jokin muu pieleen? Sisällyttämisessä ei pitäis olla ongelmaa.

Blaze [03.06.2007 23:23:04]

#

Ei vaan sun pitää linkata se SDL_gfx:kin mukaan. Lisää parametri -lSDL_gfx

Hakoulinen [04.06.2007 15:48:02]

#

Kiitos

Markus [05.06.2007 15:27:37]

#

Haluaisin tässä vielä mainita, että linuxissa jaetun kirjaston tiedostopääte ei ole ".dll" vaan ".so" ja ne sijaitsevat hakemistossa "/usr/lib". Jaetut kirjastot on yleensä tapana nimetä niin, että nimi alkaa kirjaimilla "lib", joskaan se ei ole pakollista.

tesmu [05.06.2007 19:01:53]

#

Ja tosiaan gcc / g++ käännät lähdekoodin .so:ksi gcc -shared -fPIC tiedosto.c -o tiedosto.so tai g++ -shared -fPIC tiedosto.cpp -o tiedosto.so

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta