Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/07/2006, à 12:49

dialloma

[Résolu] problème d'installation de SDL sous Kubuntu

Bonjour à tous,

je suis nouveau dans le monde de linux, je vien d'installer "Kubuntu Draper", j'ai un portable "Acer Aspire 3610". Je fait des programmes en C/C++. Je voudrais installé la librairie SDL pour programmer avec, mais j'ai une question à ce niveau.
Est ce que j'ai réellement besoin d'aller sur le site officiel oubien le pacquet existe déjà dans Adept? J'ai vu plusieurs pacquets contenant le mot SDL dans Adept, je voudai savoir lequel je dois installer, lequel est équivalent à celui que j'allais télécharger sur le site officiel. En fait, je sais qu'en installant toutes les librairies contenant SDL que j'ai vu dans Adept, il y a de fortes chances que ça puisse marcher, je pourrai faire mes programmes C en utilisant la librairie SDL. mais le problème est que comme j'ai tout installé, et peut être qu'il ne fallait pas tout installer, je ne sais pas laquelle des librairies est la bonne, et si un jour j'ai envie de programmer sur un autre PC, je ne saurai pas le nom de la librairie qu'il me faudra. J'espère que vous m'avez compri.

Je compte sur votre aide. Merci d'avance

Hors ligne

#2 Le 22/07/2006, à 15:14

Crashforburn

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Salut,

Oui la lib SDL est dans les depots wink

Installes libsdl1.2debian-all, libsdl1.2-dev et tu pourras programmer en SDL.


Un blog inutile de plus : http://crashforburn.free.fr/dotclear/
[Membre du club des beaux Ubunteros] : http://forum.ubuntu-fr.org/viewtopic.php?pid=535299
Contre la nouvelle année, votons fonacon : http://www.fonacon.net/

Hors ligne

#3 Le 23/07/2006, à 12:42

dialloma

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Re Bonjour

Merci pour ce qui est de l'installation des librairies sdl. J'ai fais ce que vous m'avez dit mais seulement j'arrive pas à compiler mon premier programme. J'ai utilsé                   gcc -o monprog monprog.c et je crois que ce n'est pas ça. J'ai des messages du genre:

/tmp/ccOpuzLB.o : Dans la fonction "main":progsdl.c:(.text+0x24): référence indéfinie vers « SDL_Init »
:progsdl.c:(.text+0x29): référence indéfinie vers « SDL_Quit »
collect2: ld a retourné 1 code d'état d'exécution

pourriez vous m'aider s'il vous plaît?
Merci d'avance

Hors ligne

#4 Le 23/07/2006, à 13:02

Crashforburn

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Tapes gcc -o monprog monprog.c -lSDL (L minuscule devant le nom de la lib)

Il faut inclure les libs pour pouvoir les utiliser wink

Dernière modification par Crashforburn (Le 23/07/2006, à 13:03)


Un blog inutile de plus : http://crashforburn.free.fr/dotclear/
[Membre du club des beaux Ubunteros] : http://forum.ubuntu-fr.org/viewtopic.php?pid=535299
Contre la nouvelle année, votons fonacon : http://www.fonacon.net/

Hors ligne

#5 Le 23/07/2006, à 16:17

lost-in-the-shell

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Bizarre, ce sont toujours les mêmes fautes d'inattention qui reviennent hmm .
C'est pourtant pas compliqué.


Linux user #401253 - Ubuntu user #3023 .
Nick sur IRC : naji.
Pensez à adhérer au Comité de lutte contre le SMS.

Hors ligne

#6 Le 25/07/2006, à 22:50

dialloma

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Bonjour à tous,

je fais de la programmation C/C++ sous Kubuntu Draper. Comme vous le voyez dans mes anciens messages, j'ai installé les 2 librairies libsdl1.2debian-all, libsdl1.2-dev
qui m'ont permit de coder jusqu'au jour d'aujourd'hui. Mais quand j'ai voulu avancer un peu dans la programmation, c'est à dire charger des images (GIF, BMP, PNG, JPEG...) dans des surfaces etc...je devrais installé d'autres librairies, alors je suis allé dans Adept pour installé les librairies libsdl-image1.2 et libsdl-image1.2-dev .
Logiquement je pensais que c'était les seules qui allaient être utiles pour manipuler des formats d'images comme je l'ai cité en haut. mais sauf que je n'arrive pas à compiler mon programme.

#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h> 

void pause();

int main(int argc, char *argv[])
{
	SDL_Surface *ecran = NULL, *imageDeFond = NULL, *imageZozor = NULL, *imageSapin = NULL; // Le pointeur qui va stocker la surface de l'écran
	SDL_Rect positionIMGFond, positionZozor, positionZozorBis, positionSapin;

	positionIMGFond.x = 0; // Les coordonnées de la surface seront (0, 0)
	positionIMGFond.y = 0;
	
	positionZozor.x = 600;//Position de zozor à l'écran
	positionZozor.y = 50;
	
	positionSapin.x = 100;
	positionSapin.y = 100;
	
	SDL_Init(SDL_INIT_VIDEO);
	//SDL_WM_SetIcon(SDL_LoadBMP("sdl_icone.bmp"), NULL);	
	SDL_WM_SetIcon(IMG_Load("sdl_icone.bmp"), NULL);	
	
	ecran = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE); // On tente d'ouvrir une fenêtre
	if (ecran == NULL) // Si l'ouverture a échoué, on écrit l'erreur et on arrête
	{
		fprintf(stderr, "Impossible de charger le mode vidéo : %s\nq", SDL_GetError());
		exit(EXIT_FAILURE);
	}
	
	SDL_WM_SetCaption("Ma super fenêtre SDL avec image de fond !", NULL);  //Titre de la fenêtre
	
	//imageZozor =  SDL_LoadBMP("zozor.bmp");
	
	imageZozor =  IMG_Load("zozor.bmp");
	
	imageSapin = IMG_Load("sapin.png");
	
	SDL_SetColorKey(imageZozor, SDL_SRCCOLORKEY, SDL_MapRGB(imageZozor->format, 0, 0, 255)); //pour rendre l'image transparente
	
	//Cas transparence Alpha
	SDL_SetAlpha(imageZozor, SDL_SRCALPHA, 128);
	
	//imageDeFond = SDL_LoadBMP("lac_en_montagne.bmp");
	imageDeFond = IMG_Load("lac_en_montagne.bmp");
	
	
	SDL_BlitSurface(imageDeFond, NULL, ecran, &positionIMGFond); // Collage de la surface sur l'écran
	SDL_BlitSurface(imageZozor, NULL, ecran, &positionZozor); // Collage de la surface sur l'écran
	SDL_BlitSurface(imageSapin, NULL, ecran, &positionSapin); // Collage de la surface sur l'écran
	
	
	SDL_Flip(ecran); //Mise à jour de l'écran
	
	pause();

	SDL_FreeSurface(imageDeFond);
	SDL_FreeSurface(imageZozor);
	SDL_Quit();

	return EXIT_SUCCESS;
}



void pause()
{
	int continuer = 1;
	SDL_Event event;

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

à la compilation j'ai le message suivant:

/tmp/ccs6I8jY.o : Dans la fonction "main":loadIMG.c:(.text+0x70): référence indéfinie vers « IMG_Load »
:loadIMG.c:(.text+0xf8): référence indéfinie vers « IMG_Load »
:loadIMG.c:(.text+0x107): référence indéfinie vers « IMG_Load »
:loadIMG.c:(.text+0x16e): référence indéfinie vers « IMG_Load »
collect2: ld a retourné 1 code d'état d'exécution

Peut être que je n'ai pas installé les bonnes librairies?

Help s'il vous plaît. Merci d'avance

Hors ligne

#7 Le 26/07/2006, à 20:17

dialloma

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Merci à tous, j'ai pu trouvé moi même la solution à mon problème

A bientôt

Hors ligne

#8 Le 26/07/2006, à 21:03

lost-in-the-shell

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Il suffit d'appeller GCC avec le flag -lSDL_image .

Edit: pas vu le [Résolu] .

Dernière modification par lost-in-the-shell (Le 26/07/2006, à 21:06)


Linux user #401253 - Ubuntu user #3023 .
Nick sur IRC : naji.
Pensez à adhérer au Comité de lutte contre le SMS.

Hors ligne

#9 Le 27/07/2006, à 11:58

dylhoxic

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Crashforburn a écrit :

Tapes gcc -o monprog monprog.c -lSDL (L minuscule devant le nom de la lib)

Il faut inclure les libs pour pouvoir les utiliser wink

Je desespère un jour que quelqu'un propose la bonne méthode pour compiler un programme qui utilise SDL :

gcc -o monprog monprog.c `sdl-config --cflags --libs`

C'est beaucoup plus portable et ca inclus les bonnes librairies tout seul wink


Kubuntu++

Hors ligne

#10 Le 27/07/2006, à 18:00

lost-in-the-shell

Re : [Résolu] problème d'installation de SDL sous Kubuntu

dylhoxic a écrit :

gcc -o monprog monprog.c `sdl-config --cflags --libs`

C'est beaucoup plus portable et ca inclus les bonnes librairies tout seul wink

Dans le cas d'utilisation de librairies complémentaires, ça fait pas tout le boulot, la preuve avec un programme utilisant SDL_net :

naji@mammeri:~/programmation/sdlnet/$ gcc -o server main.c `sdl-config --cflags --libs`
/tmp/cc2xonSu.o : Dans la fonction "main":main.c:(.text+0x61): référence indéfinie vers « SDLNet_Init »
:main.c:(.text+0x9a): référence indéfinie vers « SDLNet_ResolveHost »
:main.c:(.text+0xac): référence indéfinie vers « SDLNet_TCP_Open »
:main.c:(.text+0xd9): référence indéfinie vers « SDLNet_TCP_Accept »
:main.c:(.text+0xfc): référence indéfinie vers « SDLNet_TCP_Recv »
:main.c:(.text+0x117): référence indéfinie vers « SDLNet_TCP_Close »
:main.c:(.text+0x12e): référence indéfinie vers « SDLNet_TCP_Close »
:main.c:(.text+0x133): référence indéfinie vers « SDLNet_Quit »
collect2: ld a retourné 1 code d'état d'exécution

naji@mammeri:~/programmation/sdlnet$ gcc -o server main.c `sdl-config --cflags --libs` -lSDL_net

Dernière modification par lost-in-the-shell (Le 27/07/2006, à 18:04)


Linux user #401253 - Ubuntu user #3023 .
Nick sur IRC : naji.
Pensez à adhérer au Comité de lutte contre le SMS.

Hors ligne

#11 Le 27/07/2006, à 18:22

dylhoxic

Re : [Résolu] problème d'installation de SDL sous Kubuntu

sdl-config c'est juste pour SDL et j'ai jamais dit que ca marchait pour les librairies sdl annexes(SDL_Net, SDL_Mixer ou SDL_Image).

ca inclus les bonnes librairies tout seul

Tu as surement mal compris cette phrase. En fait si tu executes sdl-config, tu auras ceci comme paramètres ajoutés à gcc :

-I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread

Comme tu peux le voir, ca rajoute la librairie pthread sous linux; sous FreeBSD ou Windows ca ajoutera d'autres trucs...

Dernière modification par dylhoxic (Le 27/07/2006, à 18:24)


Kubuntu++

Hors ligne

#12 Le 27/07/2006, à 18:51

Crashforburn

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Si elle a pas besoin du reste, ça sert pas énormément wink


Un blog inutile de plus : http://crashforburn.free.fr/dotclear/
[Membre du club des beaux Ubunteros] : http://forum.ubuntu-fr.org/viewtopic.php?pid=535299
Contre la nouvelle année, votons fonacon : http://www.fonacon.net/

Hors ligne

#13 Le 27/07/2006, à 20:21

dylhoxic

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Crashforburn a écrit :

Si elle a pas besoin du reste, ça sert pas énormément wink

jolie réaction mad ! pourquoi faire les choses proprement quand on peut le faire cradement...

Dernière modification par dylhoxic (Le 27/07/2006, à 20:23)


Kubuntu++

Hors ligne

#14 Le 27/07/2006, à 20:26

Crashforburn

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Ce n'est pas ce que je voulais dire, je voulais juste dire que c'est plus dur à comprendre avec des tonnes de -l et tout et tout que un truc simple qui remplit sa tâche (bien que le tien soit largement plus utile et pratique si on a besoin de toutes ces libs wink)

Désolé si je me suis mal exprimé wink


Un blog inutile de plus : http://crashforburn.free.fr/dotclear/
[Membre du club des beaux Ubunteros] : http://forum.ubuntu-fr.org/viewtopic.php?pid=535299
Contre la nouvelle année, votons fonacon : http://www.fonacon.net/

Hors ligne

#15 Le 27/07/2006, à 20:38

dylhoxic

Re : [Résolu] problème d'installation de SDL sous Kubuntu

Crashforburn a écrit :

Ce n'est pas ce que je voulais dire, je voulais juste dire que c'est plus dur à comprendre avec des tonnes de -l et tout et tout que un truc simple qui remplit sa tâche (bien que le tien soit largement plus utile et pratique si on a besoin de toutes ces libs wink)

Désolé si je me suis mal exprimé wink

Bon on s'est mal compris et je me suis un peu emporté moi aussi donc scuze me big_smile

Et en fait tout ce qui est rajouté est souvent nécessaire. Je prends par exemple le cas de pthread; si on utilise l'audio avec sdl, il faut absolument cette librairie vu que la gestion de l'audio par sdl se fait avec des threads.

Cela étant dit et pour un programme basique, le -lSDL suffit wink

Bonne soirée


Kubuntu++

Hors ligne