[c++ SDL] problème de compilation

Résolu/Fermé
kevin - 6 mai 2006 à 15:25
 powerpsy - 24 janv. 2009 à 16:22
Boujour,
j'ai un problème avec Dev-c++ si quelqu'un pourrait avoir la bonté de m'aider je lui en serait très reconaissant.

Alor voila, j'ai window xp 2000 et j'utilise Dev-c++ comme compilateur mais je suis débutant et je voudrais aprendre a faire un tout petit jeu en 2D alor j'ai instalé la bibliothèque SDL sur Dev-c++ mais je n'arrive pas à compiler ce simple programme:

#include <stdlib.h>
#include <SDL/SDL.h> // Librairie SDL

int main( int argc, char *argv[ ] )
{
SDL_Surface *screen;

if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
{
printf( "Impossible d'initialiser SDL: %s\n", SDL_GetError( ) );
exit( 1 );
}

atexit( SDL_Quit );
screen = SDL_SetVideoMode( 640, 480, 16, SDL_HWSURFACE );

if( screen == NULL )
{
printf( "Impossible d'initialiser le mode vidéo: %s\n", SDL_GetError( ) );
exit( 1 );
}

SDL_Delay( 3000 );

return 0;
}


j'ai surement dû faire une mauvaise manipulation en instalant SDL mais j'ai beau chercher je trouve pas et chaque fois que je le veux le compiller sa marche pas et sa m'affiche sa :

Compilateur: Default compiler
Building Makefile: "C:\Documents and Settings\Kévin\Mes documents\programme en c et c++\Makefile.win"
Exécution de make...
make.exe -f "C:\Documents and Settings\Kévin\Mes documents\programme en c et c++\Makefile.win" all
gcc.exe -c main.c -o main.o -I"C:/Dev-Cpp/include" -I"C:/Dev-Cpp/SDL-1.2.9/include"

gcc.exe main.o test_SDL_private.res -o "test SDL.exe" -L"C:/Dev-Cpp/lib" -L"C:/Dev-Cpp/SDL-1.2.9/lib" -mwindows -lmingw32 -lSDLmain -lSDL,

C:\Dev-Cpp\Bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot find -lSDL,
collect2: ld returned 1 exit status

make.exe: *** ["test] Error 1

Exécution terminée

je sais pas se qui ne va pas alor si quelqu'un pouvait maider se serai gentil SVP.

Merci d'avance

Aurevoir

16 réponses

pinacolata Messages postés 3 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 27 novembre 2007
22 nov. 2007 à 15:38
Bonjour,
je veux lire un fichier ligne par ligne. stocker chaque ligne dans une chaine. les lignes n'ont pas une longueur égale.
Merci
0
Ok,
j'en ai pris note, je vais regarder tout ça,
Merci du conseil
a+
0
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
25 nov. 2007 à 13:18
Pour moi c'est des salades dire que tel environnement est meilleur. Un simple éditeur texte (par exemple vim), un gdb, et un gcc peuvent suffire à coder n'importe quoi. Donc dev-cpp n'est pas plus mauvais qu'un autre. Après à toi de voir quelle interface tu préfères. L'avantage de dev-cpp c'est qu'il est basé sur gcc donc le jour ou tu coderas sous linux, ce sera le même compilateur.

Je ne pense pas qu'il y ait de logiciel plus "professionnel" qu'un autre. Moi ce que je vois c'est que dev-cpp est gratuit contrairement à visual c++, et qu'en environnement professionnel je n'utilise pas visual c++.

De plus on peut tout à fait développer des jeux avec un autre environnement que visual c++. Ca m'étonnerait en particulier que les programmes sous linux soient développés sous visual c++ ;-) La seule chose qui peut limiter ou non le développement d'un programme c'est l'accès à telle ou telle librairie, mais c'est indépendant de l'environnement de développement.

Après chacun ses goûts mais pour moi l'environnement idéal pour programmer ce n'est pas visual c++ mais un bon vieux linux ou tout est gratuit, propre, et prêt à l'emploi...

Un exemple : tu voulais installer libSDL. Pour l'installer sous debian tu tapes juste :
aptitude install libsdl1.2-dev

et ensuite tu compiles comme avec dev cpp, avec l'option -lSDL et tout marche directement.

Bonne chance
0
visual c++ dispose d'une version gratuite qui est tres bien . <visual c++ express 2005> ( je parler de sa)

chaqu'un son gout s'est vrais. mais se que j'est dit a propot de divcpp n'est pas une sallade lol!!!

est je suis dacors que c sous linux est un regal, mais pas pour debuton.

a+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
3 déc. 2007 à 20:55
Bah ubuntu c'est accessible a grand public faut arrêter :-)
Pour dev cpp personnellement je n'ai jamais utilisé mais en tout cas il n'est en rien moins professionnel.
Mais sinon pas de soucis moi je n'ai rien contre visual, chacun utilise les outils qui lui plait ^^

Bonne continuation
0
Salut
j'ai le meme pr que Kevin, mais avec le Visual C++ 6 je me doute de la SDL elle meme que ca marche..!!
0
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
23 févr. 2008 à 18:44
Ouvre un nouveau sujet avec le message d'erreur exact, mais a priori c'est encore une histoire d'option de compilation (il faut vérifier tes chemins d'include, de LD_LIBRARY_PATH etc).

Bonne chance
0
Salut
j'ai trouvé la réponse a mon pr dans une discution "Installation SDL sous Visual C++ 6 le 04/12/2005 23:38:26" voir :
wwwcppfrance.com
si q1 cherche la documentation sur La SDL j'ai aussi trouvé 16 chapitres de comme utilisé la SDL en francais voir :https://loka.developpez.com/tutoriel/sdl/
0
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
2 mars 2008 à 14:04
Il faut afficher le sortie complète du compilateur si tu veux qu'on puisse t'aider. Vérifie :

a) que tu références bien les headers SDL. S'il ne sont pas dans un répertoire standard utilise l'option -I ou -isystem de gcc/g++. Exemple :
gcc -W -Wall -I/le/chemin/vers/les/headers plop.c


b) que tu linkes bien ton programme avec la librairie SDL lors de la construction de l'exécutable.
- Si tu utilises une librairie ".a", il suffit de la passer en paramètre de gcc/g++ au même titre que n'importe quel module (.o).
- Si c'est un .so (par exemple libmalibso.so) il faut utiliser l'option -l (-lmalibso).
gcc -W -Wall -I/le/chemin/vers/les/headers module1.o module2.o librairie1.a librairie2.a plop.c -lmalibso1 lmalibso2 -o monexecutable main.c


c) Si ta librairie n'est pas dans un répertoire standard il faudra lui indiquer via les options -L et -Wl,R au même titre que les headers avec l'option -I ou -isystem.

Bonne chance
0
salut;
1* bon j'ai pa mis les les headers ds la rép standard é pour cela je les appeler avec le nom 2 la rép ou g'ai mis (<SDL/SDL.h>) et ca marche .A propos de la sortie du compilateur il affiche seulement cette ligne

C:\Dev-Cpp\testsdl\Makefile.win [Build Error] [main.o] Error 1

2* j'ai bien installer lé link en respectant lé instruction de l'instruction ds le siteduzero.com .Voici le lien :
https://openclassrooms.com/fr/courses

REM / J'ai essayé d'installer la SDL avec Dev -C++ et Code::Blooks(j'ai la derniére version) et ca pa marché ds les deux cas
A noter k j'utilise le systéme d'exploitation Vista

bon Merci pour votre aide !!!
Que Dieu te montre le chemin du paradis .Bonne journée!
0
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
1 avril 2008 à 09:51
Merci pour ton retour, bonne continuation !
0
Salut,
L'erreur de base en installant SDL avec DevC++ / Code::Blocks est de télécharger la mauvaise archive !
Il faut prendre la TROISIEME.
Dans l'archive, il y a un répertoire BIN. Les autres archives ne contienne pas ce répertoire.


Win32:
SDL-devel-1.2.13-VC6.zip (Visual C++ 6.0)
SDL-devel-1.2.13-VC8.zip (Visual C++ 2005 Service Pack 1)
SDL-devel-1.2.13-mingw32.tar.gz (Mingw32)
0
Hello,

Ouai sa devait être ça car j'avais créer un raccourci du dossier de dev, et si je met la bibliothèque dans le dossier de dev, sur le c, à la place du raccourci sa marche.

Alors Merci !!!

Mais pourquoi me déconseil tu dev c++?

a+
-1
mamiemando Messages postés 33330 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 29 octobre 2024 7 799
24 févr. 2008 à 20:12
Merci pour ce complément d'informations :-)
-1
Boujour,
j'ai un problème avec Dev-c++ si quelqu'un pourrait avoir la bonté de m'aider je lui en serait très reconaissant.

Alor voila, j'ai window vista et j'utilise Dev-c++ comme compilateur mais je suis débutant et je voudrais aprendre a faire un tout petit jeu en 2D alor j'ai instalé la bibliothèque SDL sur Dev-c++ mais je n'arrive pas à compiler ce simple programme:

#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>
int main(int argc, char *argv[])
{
if (SDL_Init(SDL_INIT_VIDEO) == -1)
{
fprintf(stderr, "Erreur d'initialisation de la SDL");
exit(EXIT_FAILURE);
}



SDL_Quit();

return EXIT_SUCCESS;
}


le compilateur affiche :
C:\Dev-Cpp\testsdl\Makefile.win [Build Error] [main.o] Error 1
-1
bracket2007 Messages postés 1 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 21 novembre 2007
21 nov. 2007 à 17:13
salut

verifie que le fichier SDL.DLL est bien dans le répertoir qui contient ton .exe

je crois que ses la seul chose qui peut t'échapper l'or de l'installation

juste un conseil d'ami. DIV C++ s'est un mauvais choix !!
-2
le Div cpp c'est vieu au niveau profetionnel
sa fais longtemp qu'il n'a pas été mise a jour je vous conseil visuel c++ expresse 2005 ou CodeBloc c'est les meilleurs surtout pour un programmeur de jeux.

mais pour des petits jeux sa marche !!

aller a+ , et bonne chance
-2