Partage
  • Partager sur Facebook
  • Partager sur Twitter

Installer la SDL dans un dossier different, sous windows

    6 mai 2008 à 17:02:05

    Bonjours, voila je travaille sur un projet c++ dans lequel j'aimerait rajouter une touche de SDL ;)

    Le probleme: etant à l'IUT je doit stocker la librairie sous ma saision et l'inclure en local. Mais visual C ne veut pas :(

    J'utilise visual c++ 6.0
    Fichier inclue :
    - lib/SDLmain.lib
    - lib/SDL.lib
    - lib/SDL.dll
    - include/SDL.h

    J'ai deja tenter pas mal de chose mais rien ne compile, erreur de link cassé ou de fonction non connu etc...

    J'ai deja fait :
    - mettre le fichier SDL.dll avec l'executable
    - Inclure tout les fichier dans mon main de toute possibiliter possible
    - Placer les .lib dans les setting de VC++

    Si quelqu'un aurrai la demarche "exacte" et a partir de zero de la procedure a effectuer, merci d'avance. Toute lesautres idees sont les bienvenue.

    Cordialement.
    • Partager sur Facebook
    • Partager sur Twitter
      6 mai 2008 à 17:14:49

      oula...

      Tu fous la SDL dans le dossier que tu veux et tu indiques les dossier inclue et lib à Visual et à partir de là tu link tout simplement... Où est le problème ?
      • Partager sur Facebook
      • Partager sur Twitter
        6 mai 2008 à 17:28:54

        Et non :p

        msvcrt.lib(MSVCRT.dll) : error LNK2005: _exit already defined in LIBCD.lib(crt0dat.obj)
        msvcrt.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in LIBCD.lib(fclose.obj)
        msvcrt.lib(MSVCRT.dll) : error LNK2005: __isctype already defined in LIBCD.lib(isctype.obj)
        LIBCD.lib(crt0init.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
        Debug/sdsd.exe : fatal error LNK1169: one or more multiply defined symbols found
        Error executing link.exe.

        Voici l'erreur, j'ai inserait les librairies dans les setting.

        (J'ai aussi ajouter les dossier lib et include dans les preposseceur, meme genre d'erreur).
        • Partager sur Facebook
        • Partager sur Twitter
          6 mai 2008 à 17:32:22

          Citation : Pas de titre


          Voici l'erreur, j'ai inserait les librairies dans les setting.

          (J'ai aussi ajouter les dossier lib et include dans les preposseceur, meme genre d'erreur).



          Tu peux m'en dire plus sur ta démarche ? car là j'ai l'impression que ta foutu un gros bordel dans la config de VS.
          • Partager sur Facebook
          • Partager sur Twitter
            6 mai 2008 à 17:36:40

            J'ai deja reste plusieru fois ;) mais il est vraix que j'ai deja tenter tout se que j'ai trouver.

            A l'heur actuel, dans mon main :
            #include "include/SDL.h"

            dans project/settings/link, champ Object/librari j'ai rajouter ./lib/SDL.lib et ./lib/SDLmain.lib

            et j'ai cette erreur :
            svcrt.lib(MSVCRT.dll) : error LNK2005: _exit already defined in LIBCD.lib(crt0dat.obj)
            msvcrt.lib(MSVCRT.dll) : error LNK2005: _fclose already defined in LIBCD.lib(fclose.obj)
            msvcrt.lib(MSVCRT.dll) : error LNK2005: __isctype already defined in LIBCD.lib(isctype.obj)
            LIBCD.lib(crt0init.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
            Debug/sdsd.exe : fatal error LNK1169: one or more multiply defined symbols found

            Tout le reste est par default.

            Mon arboraissance (au cas ou)
            main.cpp
            main.exe
            include/Tout les SDL.h
            lib/SDL.lib
            lib/SDLmain.lib
            lib/SDL.dll
            • Partager sur Facebook
            • Partager sur Twitter
              6 mai 2008 à 17:40:26

              ok, je viens de relire ton premier post, tu es sous Visual C++ 6.0, ça commence à devenir sérieusement obsolète tout ça...

              Bref je ne connais pas bien (pour ne pas dire pas du tout) VC++ 6.0 donc essaie de passer à des versions plus récente si possible ?
              • Partager sur Facebook
              • Partager sur Twitter
                6 mai 2008 à 17:41:46

                Ok je vais voir, Visual studio 2005 tu connait mieux ? Si ta la demarche ?

                merci bien.
                • Partager sur Facebook
                • Partager sur Twitter
                  6 mai 2008 à 17:49:16

                  Perso je suis sous 2008, mais c'est pareille :

                  Tu vas dans outil -> Projet et solution -> repertoire de VC++

                  dans include tu indiques le dossier include de la SDL
                  dans lib tu indiques le dossier lib de la SDL

                  ensuite dans le linker du projet :

                  Image utilisateur

                  pour tester :

                  #include <SDL.h>
                  
                  int main(int argc, char **argv)
                  {
                      SDL_Init(SDL_INIT_VIDEO);
                  
                      SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
                  
                      SDL_Event event;
                  
                      bool run = true;
                  
                      while (run)
                      {
                          SDL_WaitEvent(&event);
                  
                          if (event.type == SDL_QUIT)
                              run = false;
                      }
                  
                      SDL_Quit();
                  
                      return (0);
                  }
                  
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 mai 2008 à 18:03:20

                    ok je suis plus en cours mais je test demain je te tien au courant

                    Merci bien
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Installer la SDL dans un dossier different, sous windows

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown