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 :

probleme de compilation sous Code Blocks - Windows


Sujet :

SDL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut probleme de compilation sous Code Blocks - Windows
    Bonjour,

    Je bosse sous Code Blocks sur Linux chez moi sur du dev SDL/openGL.
    Tout fonctionne tres bien.

    Aujourd'hui, je suis amené a travailler sur un autre PC, et pas moyen de faire compiler mon appli sous windows.
    il cherche le fichier SDL.dll que j'ai copié dans le repertoire lib de mon compilateur, et dans le repertoire bin aussi parce que je l'avais lu qque part...

    j'ai essayé de linker plusieurs noms de librairie (SDL, SDL.lib, SDL.dll.... mais rien ne fonctionne)

    le message d'erreur:
    C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: cannot find -lSDL.dll

    mais le bougre ne trouve toujours rien.

    SVP, j'ai vraiment besoin d'aide:!!
    Merci
    Z
      0  0

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Bonjour et bienvenu,
    As-tu bien configuré les répertoires d'include et de librairie dans Code::Block (option du projet: buid options/search directories) ou option de CB (Settings/Compiler&Debugger/Search directories) ?
      0  0

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    Merci pour ta réponse!

    Non, ces champs sont vides.
    Que dois je indiquer?

    intuitivement je dirais que dans le linker, je dois donner l'adresse des bibliotheques et la dll au compileur, c'est ca?
    =======================
    Edit: ca marche toujours pas...
      0  0

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Tu dois positionner pour les répertoires du linker le répertoire où sont présentes les librairies (les .lib). Donc, cela dépend où tu as installé SDL.
    .dll n'est normalement pas liée à la librairie mais doit être présent dans un répertoire accessible depuis ton exécution (répertoire de ton exe, de windows).
      0  0

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    J'ai essayé, ca marche pas....

    j'ai rajouté la dll dans winNT/system, winNT/system32, dans le repertoire bin de minGW, dans le repertoire ou est generé mon exe...mais rien n'y fait.
    je viens de me rendre compte qu'il y a d'autres infos sur le message d'erreur que voici au complet::


    -------------- Build: Debug in SDL01 ---------------

    Linking console executable: bin\Debug\SDL01.exe
    C:\Program Files\CodeBlocks\SDL-1.2.13\lib/SDLmain.lib(./Release_NOSTDIO/SDL_win32_main.obj):C:\Temp\src\SDL-1.:(.text[_main]+0x0): multiple definition of `_main'
    C:/Program Files/CodeBlocks/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../libmingw32.a(main.o):main.c:(.text+0x0): first defined here
    C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: cannot find -lSDL.dll
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 3 seconds)
    1 errors, 0 warnings



    Je comprends pas cette multiple definition du main, sachant que j'ai qu'un fichier de base: mon "main.cpp"...
    t'as une idée??
      0  0

  6. #6
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Citation Envoyé par zeder59 Voir le message
    Linking console executable: bin\Debug\SDL01.exe
    C:\Program Files\CodeBlocks\SDL-1.2.13\lib/SDLmain.lib(./Release_NOSTDIO/SDL_win32_main.obj):C:\Temp\src\SDL-1..text[_main]+0x0): multiple definition of `_main'

    Je comprends pas cette multiple definition du main, sachant que j'ai qu'un fichier de base: mon "main.cpp"...
    t'as une idée??
    Difficile... Un problème dans l'ordre des librairies incluses? une redondance dans les librairies incluses ? une redondance dans les .obj ?

    Citation Envoyé par zeder59 Voir le message
    C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: cannot find -lSDL.dll
    collect2: ld returned 1 exit status
    Là, tu dois avoir dans les options de link l'ajout à SDL.dll qui est inutile.


    [EDIT]: il y a un forum spécifique à la SDL. Je peux déplacer le fil, le problème est peut être dû à cette librairie que j'avoue en toute modestie ne pas connaître.
      0  0

  7. #7
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 580
    Points
    41 580
    Par défaut
    Il me semble que dans un programme utilisant SDL, tu ne dois pas mettre de main(), mais un SDL_main() à la place.
      0  0

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    je veux bien déplacer le post sur le forum SDL si tu penses que c'est plus approprié. par contre, avant de faire ca, tu veux bien me donner l'adresse du forum.... le site est tellement fourni que j'ai du mal a m'y retrouver.

    Citation Envoyé par Médinoc Voir le message
    Il me semble que dans un programme utilisant SDL, tu ne dois pas mettre de main(), mais un SDL_main() à la place.
    J'ai essayé... il ne se passe rien.

    apres mon code est vraiment tout simple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    #include <SDL/SDL.h>
     
     
    int main ( int argc, char** argv )
    {
        // initialize SDL video
        if ( SDL_Init( SDL_INIT_VIDEO ) < 0 )
        {
            printf( "Unable to init SDL: %s\n", SDL_GetError() );
            return 1;
        }
     
     
        return 0;
    }
    je pense pas que le souci vienne de la.

    merci pour votre coup de main...
      0  0

  9. #9
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 530
    Points : 5 206
    Points
    5 206
    Par défaut
    dans les bibliothèques à lier, tu as bien mis dans l'ordre :
    mingw32
    sdlmain
    sdl
    et j'insiste : dans l'ordre

    ps : pas de SDL_main, un main tout ce qu'il y a de plus standard :
      0  0

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Non j'avais pas lié ces bibliothèques.
    Je l'ai fait, dans l'ordre, et jai toujours le meme message d'erreur.

    Merci pour ta réponse
      0  0

  11. #11
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 530
    Points : 5 206
    Points
    5 206
    Par défaut
    tu parles de ce message là ?
    Citation Envoyé par zeder59 Voir le message
    le message d'erreur:
    C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: cannot find -lSDL.dll
      0  0

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    Oui, c'est bien lui... je te mets toutes les infos du build log, si ca te parle:

    -------------- Build: Debug in SDL01 ---------------

    Linking console executable: bin\Debug\SDL01.exe
    C:\Program Files\CodeBlocks\SDL-1.2.13\lib/SDLmain.lib(./Release_NOSTDIO/SDL_win32_main.obj):C:\Temp\src\SDL-1.:(.text[_main]+0x0): multiple definition of `_main'
    C:/Program Files/CodeBlocks/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../libmingw32.a(main.o):main.c:(.text+0x0): first defined here
    C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: cannot find -lSDL.dll
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 2 seconds)
    1 errors, 0 warnings
      0  0

  13. #13
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 530
    Points : 5 206
    Points
    5 206
    Par défaut
    j'ai l'impression que tu essaies de lier les mauvaises bibliothèques
    dans le répertoire "lib" de mingw tu devrais avoir :
    libSDLmain.a
    libsdl.la
    libSDL.dll.a
    et avec ton exe : SDL.dll

    tu peux récupérer les bibliothèques de développement pour mingw ici :
    http://www.libsdl.org/download-1.2.php

    dans "Development Libraries:"
    SDL-devel-1.2.13-mingw32.tar.gz (Mingw32)
      0  0

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    Juste pour repréciser:
    je bosse sur 2 PC:
    un sous linux qui marche impeccable

    un sous windows 2000 ou j'arrive pas a compiler.
    La j'ai l'impression que tu me donnes des infos pour compiler sous linux, moi c'est sous Windows que j'ai des pbs.

    en tous cas, je suis sur le PC qui marche en ce moment donc je peux pas tester ce que tu me proposes.

    en tout cas merci pour le coup de main.

    je te tiens au courant.

    Z.
      0  0

  15. #15
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 530
    Points : 5 206
    Points
    5 206
    Par défaut
    Citation Envoyé par zeder59 Voir le message
    La j'ai l'impression que tu me donnes des infos pour compiler sous linux, moi c'est sous Windows que j'ai des pbs.
    je suis sous windows et c'est ce package que j'utilise pour créer des projets SDL
    tu as peut-etre été induit en erreur par l'extension (tar.gz) de l'archive ?
      0  0

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    C'est bon!!
    ca marche... c'etait bien ca, la librairie n'etait pas compatible avec mon compilateur (ou qqchose comme ca...)

    en tout cas, ca fonctionne!

    Tres grand merci a tous.

    NB: comment je fais pour mettre le post en résolu?? j'edite le premier post?
      0  0

  17. #17
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Bon, c'était donc le bon forum
    Penser à
      0  0

Discussion fermée
Cette discussion est résolue.

Discussions similaires

  1. Socket SOCK_RAW sous Code::Blocks/Windows
    Par jmv dans le forum Réseau
    Réponses: 2
    Dernier message: 10/11/2015, 10h45
  2. [SDL 1.2] Probleme de compilation sous code blocks
    Par c3rise019 dans le forum SDL
    Réponses: 13
    Dernier message: 28/04/2014, 18h43
  3. Réponses: 2
    Dernier message: 09/02/2011, 21h06
  4. Compilation sous code::blocks
    Par Gobelins dans le forum Débuter
    Réponses: 5
    Dernier message: 16/06/2009, 11h20
  5. Réponses: 4
    Dernier message: 01/06/2008, 18h23

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