IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SDL Discussion :

[Windows] Erreur à l'éxécution


Sujet :

SDL

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut [Windows] Erreur à l'éxécution
    Bonjour.

    Je travaille sous Windows, avec Eclipse et le compilateur MinGW.
    Je souhaite réaliser un simple programme avec la librairie SDL.

    J'ai donc installer SDL en téléchargeant l'archive et placant les fichiers .h, .dll...etc.. au bon endroit.

    J'ai réalisé les "linkages" comme il le faut, en ajoutant dans l'ordre : mingw32, SDLmain, SDL.

    Je réalise un programme extrêmement simple :

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

    cout << "test" << endl;
    return 0;
    }


    Aucun souci de compilation, mais c'est au moment de l'éxécution que le programme plante immédiatement... :
    Message ==> "Test.exe a cesser de fonctionner"

    Je ne comprends pas le problème. Tout ce que je sais c'est que dès que je commente le #include <SDL/SDL.h>, le programme s'éxécute.


    Merci de votre aide.

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Vous auriez pu mettre le programme en entier ( juste au cas où qu'il y ai des lignes entre le #include et le main() ).
    Dans ce forum nous avons des balises [ C O D E ] et [ / C O D E ] sans les espaces, qui permette de placer le code avec une jolie présentation. Les balises peuvent être intégrés grace au boutton # lors de l'édition du message.

    Du coup, je ne vois pas pourquoi ça plante :s
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Voici le code. (Je l'ai même encore plus simplifier en enlevant le cout...)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #include <SDL/SDL.h>
     
    int main(int argc, char *argv[]) {
     
    	return 0;
    }
    Toujours le même souci, le programme plante directement, et dès que je commente le "#include <SDL/SDL.h>" il marche...

    J'ajoute le rapport de compilation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    **** Build of configuration Debug for project testCube ****
     
    **** Internal Builder is used for build               ****
    g++ -O0 -g3 -Wall -c -fmessage-length=0 -omain.o ..\main.cc
    g++ -otest.exe main.o -lmingw32 -lSDLmain -lSDL
    Build complete for project test
    Time consumed: 421  ms.

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Merci pour les balises de code.

    Je ne sais pas trop, cela me semble très bizarre.
    Je dirai que le problème peut venir du faire, que sous SDL, on doit mettre SDLMain à la place de main. Mais je ne pense pas que cela vienne de là. En plus ce n'est pas une obligation.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    J'ai rajouté "SDLmain" à la place de main et là j'ai une erreur de compil' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    **** Internal Builder is used for build               ****
    g++ -O0 -g3 -Wall -c -fmessage-length=0 -omain.o ..\main.cc
    g++ -otest.exe main.o -lmingw32 -lSDLmain -lSDL
    C:/Program Files/Wascana/mingw/bin/../lib/gcc/mingw32/3.4.5/../../../libSDLmain.a(SDL_win32_main.o): In function `console_main':
    e:/Eclipse/workspaces/cdt/installer/build/SDL/build/../SDL-1.2.12/src/main/win32/SDL_win32_main.c:217: undefined reference to `SDL_main'
    collect2: ld returned 1 exit status
    Build error occurred, build is stopped
    Time consumed: 658  ms.
    J'vais réessayer de ré-"installer" la librairie SDL... parce que là j'y comprends plus rien...

    Edit : J'ai essayé avec "SDL_main" et non "SDLmain". Plus de souci de compilation, mais un résultat toujours identique à l'éxécution...

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Et ben voilà... j'ai tout réinstallé la librairie SDL en suivant scrupuleusement ce tutoriel, et ça marche.

    J'avais dû faire une fausse manip. Désolé d'avoir crée un post pour ça.

    En tout cas merci LittleWhite pour ton attention !!!

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Un autre problème se pose...

    Les affichages en console ne fonctionnent plus (==> cout) lorsque je fais #include <SDL/SDL.h> dans mon programme.

    Si j'enlève ce include (ou le commente) ça fonctionne...

  8. #8
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Pour les cout, c'est parce que SDL ouvre deux fichiers stdout , stderr... et va mettre les sorties là dedans
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  9. #9
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    En effet, les affichages de cout se font dans "stdout.txt", dans le dossier de l'éxécutable.

    Y'a-t-il une astuce pour ré-afficher en console ?

  10. #10
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Récent sujet, qui était placé en dessous du votre.
    http://www.developpez.net/forums/d86...l/console-sdl/
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. erreur d'éxécution script windows 98
    Par mehdiing dans le forum Windows 2000/Me/98/95
    Réponses: 1
    Dernier message: 25/05/2007, 00h47
  2. [VB6] Erreur d'éxécution 3001
    Par boudincweole10 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 30/04/2006, 14h39
  3. [VB]Erreur d'éxécution 80040e10
    Par Methodmay31 dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 14/03/2006, 15h51
  4. [Etat][Requête] Erreur d'éxécution '3364'
    Par Optimus dans le forum IHM
    Réponses: 2
    Dernier message: 05/01/2006, 14h24
  5. [Debutant][API Windows] Erreur sur SelectObject
    Par coolmaxou dans le forum Windows
    Réponses: 2
    Dernier message: 13/07/2005, 08h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo