Jump to content

[C\C++][Résolu] Librairie SDL-image


Recommended Posts

Bonjour ,

Je suis entrain de me tester au C\C++, histoire de voir les différences avec Java ( que j'adore ;) ).

Bref, j'ai trouver un trés bon tuto dans lequel on nous explique qu'on peut loader une image PNG dans une fenetre SDl avec la librairie SDL_image.h

J'ai bien inclu cette librairie, et pourtant j'ai cette erreur a la compliation ( je passe par un makefile ) :

caisse.o: In function `main':
caisse.c:(.text+0xaf): undefined reference to `IMG_Load'
collect2: ld a retourné 1 code d'état d'exécution
make: *** [caisse] Erreur 1

Voici le code source :

/*
* Teste d'interfassage graphique
*/
#include <stdio.h>
#include <stdlib.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>

void pause();

int main(int argc, char *argv[] ) {
SDL_Surface *ecran = NULL , *imageFond = NULL;
SDL_Rect position;

if (SDL_Init(SDL_INIT_VIDEO) == 1 ) {
	fprintf(stderr,"Erreur d'initialisation de la SDL : %s\n",SDL_GetError());
	exit(EXIT_FAILURE);
}

//	SDL_WM_SetIcon(SDL_LoadBMP("vidow.bmp"),NULL);	

//	Ouverture de la fenetre !
ecran = SDL_SetVideoMode(640,480,32,SDL_HWSURFACE);
SDL_WM_SetCaption("Teste d'interface graphique en C",NULL);

SDL_FillRect(ecran,NULL,SDL_MapRGB(ecran->format,10,34,69));

position.x=0; position.y=0;
imageFond = IMG_Load("Wall.png");
SDL_BlitSurface(imageFond,NULL,ecran,&position);

SDL_Flip(ecran);
pause();

SDL_FreeSurface(imageFond);
SDL_Quit();
return 0;
}

void pause(){

int continuer = 1;
SDL_Event event;

while(continuer) {
	SDL_WaitEvent(&event);
	switch(event.type) {
		case SDL_QUIT:
			continuer = 0;
	}
}

}

Une idée pour me débloquer?

Merci

Link to comment
Share on other sites

Ben d'après le message du compilateur t'as pas inclu la lib qui contient IMG_Load().

Doit surement y avoir une lib style "sdl-image" à inclure en plus de "sdl" étant donné qu'il trouve bien SDL_Init().

Ya quoi dans ton makefile ?

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...