Nyt pitkästä aikaa minulla tulee totinen ongelma linkkerin kanssa. Olen tämän tehnyt varmaan 50 kertaa, kun kone on tiltannut tai vaihtunut uuteen, mutta nyt ei onnistu. Errori ilmoitus on:
undefined reference to `rotozoomSurface'
Pelin kansiosta löytyy SDL_gfx.dll ja CodeBlockin mingw32/lib kansiosta löytyy kaikki SDL_rotozoom.lib tiedostot sekä include/SDL on kaikki gfx paketin mukana tulleet hederi tiedostot.
Compiler&Debugger asetuksetiin pistin linker settings välilehdessä sinne "other linkker setting" tämän:
-lSDL_rotozoom
mutta sitten se ei löytänyt tuota sitten pistin pelkän:
-SDL_rotozoom
sitten ei tapahtunut mitään muuta kuin tuo sama undefined errori.
Eli mitä ihmettä olen nyt vahinkossa jättänyt välistä?
#include <iostream> #include <cmath> #include <stdio.h> #include "SDL/SDL.h" #include "SDL/SDL_ttf.h" #include "SDL/SDL_rotozoom.h"
mika132 kirjoitti:
Compiler&Debugger asetuksetiin pistin linker settings välilehdessä sinne "other linkker setting" tämän:
-lSDL_rotozoom
Mitäpäs, jos kuitenkin linkität mukaan tuon SDL_gfx kirjaston?
Ainii. Unohin laittaa. laitoin kyl senki ko koitin, mut se herjaa samaa erroria.
"undefined reference to `rotozoomSurface'"
E tai tarkalleen tästä:
-lSDL_gfx
tulee:
cannot fint -lSDL_gfx
ja jos pistän näin:
-SDL_gfx
tulee:
"undefined reference to `rotozoomSurface'"
Sinulla pitäisi olla tiedosto nimeltä libSDL_gfx.a hakemistossa lib.
Miksei SDL_gfx:n sivuilla voi olla semmosta pakettia josta kaikki lib tiedostot olisi mukana? Mistä tuon saa? Googlella löyti pari linkkiä, mutta kaikki vei error 404 sivulle.
Olen tainnut jo aika monta kertaa sinullekin neuvoa, että käytä devpak-paketteja. Sieltä löytyy.
latasin devpak paketin, mutta en osaa enää asentaa devpak paketteja ja eihän devpak paketit edes toimi Code::Blockissa. Eikös ne ole dev-c++ hienouksia / helppouksia.
pitääkö muuten sen dll kirjaston nimi olla mikä heitetään pelin kanssa samaan kansioon SDL_gfx.dll vai libsdlgfx.dll? Vai joku ihan muu. Muistasin, että viimeksikin kun oli tämä ongelma vaihdoin dll kirjaston nimeä ja alkoi toimimaan, mutta nyt ei tule mieleen, että mihin sen vaihdoin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.