#1 Le 22/07/2006, à 11: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, à 14:14
- Crashforburn
Re : [Résolu] problème d'installation de SDL sous Kubuntu
Salut,
Oui la lib SDL est dans les depots
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, à 11: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, à 12: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
Dernière modification par Crashforburn (Le 23/07/2006, à 12: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, à 15: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 .
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, à 21: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, à 19: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, à 20: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, à 20: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, à 10:58
- dylhoxic
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
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
Kubuntu++
Hors ligne
#10 Le 27/07/2006, à 17:00
- lost-in-the-shell
Re : [Résolu] problème d'installation de SDL sous Kubuntu
gcc -o monprog monprog.c `sdl-config --cflags --libs`
C'est beaucoup plus portable et ca inclus les bonnes librairies tout seul
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, à 17: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, à 17: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, à 17:24)
Kubuntu++
Hors ligne
#12 Le 27/07/2006, à 17: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
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, à 19:21
- dylhoxic
Re : [Résolu] problème d'installation de SDL sous Kubuntu
Si elle a pas besoin du reste, ça sert pas énormément
jolie réaction ! pourquoi faire les choses proprement quand on peut le faire cradement...
Dernière modification par dylhoxic (Le 27/07/2006, à 19:23)
Kubuntu++
Hors ligne
#14 Le 27/07/2006, à 19: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 )
Désolé si je me suis mal exprimé
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, à 19:38
- dylhoxic
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 )
Désolé si je me suis mal exprimé
Bon on s'est mal compris et je me suis un peu emporté moi aussi donc scuze me
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
Bonne soirée
Kubuntu++
Hors ligne