Partage
  • Partager sur Facebook
  • Partager sur Twitter

POSIX threads

Comment installer cette librairie sous la version windows de Code::Blocks

    26 avril 2006 à 19:58:31

    Bonjour,
    peut-etre avez vous entendu parler de POSIX threads, librairie qui permet d'effectuer plusieurs taches "en meme temps". J'ai voulu l'apprendre et, evidemment, je n'arrive pas a l'installer...

    J'ai telecharge le package windows, une archive auto-extractive, il voulait l'installer sur mon bureau, apres avoir fait un "Browse" pour lui exppliqué que mon IDE n'etait pas "Desktop" mais "Code::Blocks", je l'ai laissé s'extraire, gentillement comme sa dans le dossier racine de code::blocks (je lui avais indiquer celui-la car je me suis dit que c'etait un grand garcon et qu'il mettrait les fichiers dans les bons dossiers).

    Il a effectivement cree des dossiers : Pre-built.2 et pthreads.2, super, maintenant qu'est-ce que je fait ? comme je suis un gars qui ne manque pas d'initiative, je suis allé voir ce qu'il y avait des ces dossiers, dans le pthreads.2 il y avait un b***** pas possible et dans le Pre-built.2 il y avait un dossier include et un dossier lib.
    Pas bete je me dit : je vais copier le contenu de lib dans mon lib et celui de include dans mon include, mes erreurs lors de la compilation sont passee de une vingtaine a deux :

    Citation : Compilo

    Compiling: tests.c
    Linking console executable: C:\Documents and Settings\Administrator\My Documents\tests.exe
    .objs\tests.o:tests.c:(.text+0x76): undefined reference to `_imp__pthread_create'
    .objs\tests.o:tests.c:(.text+0x9a): undefined reference to `_imp__pthread_create'
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 2 seconds)


    Comment faire pour definitivement bien installer POSIX threads ?

    merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      26 avril 2006 à 20:02:55

      Citation : Koral

      peut-etre avez vous entendu parler de POSIX threads, librairie qui permet d'effectuer plusieurs taches "en meme temps". J'ai voulu l'apprendre et, evidemment, je n'arrive pas a l'installer...


      Code::Blocks :
      Plugins / DevC++ Devpaks...

      Chercher le package pthread'...
      Charger, installer...


      • Partager sur Facebook
      • Partager sur Twitter
      Music only !
        26 avril 2006 à 21:49:17

        Bonne idee mais je ne trouve pas 'pthread'
        • Partager sur Facebook
        • Partager sur Twitter
          26 avril 2006 à 21:55:53

          Choisi le deuxième serveur, il y a plus de choses.
          • Partager sur Facebook
          • Partager sur Twitter
            26 avril 2006 à 21:57:55

            c'est vrai mais j'ai regardé aussi : sa n'y est pas.
            • Partager sur Facebook
            • Partager sur Twitter
              26 avril 2006 à 22:10:16

              Pas d'idée alors, j'ai plus code::blocks en ce moment.
              • Partager sur Facebook
              • Partager sur Twitter
                26 avril 2006 à 22:18:39

                Tu as rajouté l'option -pthreads (ou -pthread ou -threads je sais plus) à la compilation ?

                Tu peux aussi utiliser la librairie de threads de la SDL, si t'as déja installé la SDL ça devrait être assez simple.
                • Partager sur Facebook
                • Partager sur Twitter
                  26 avril 2006 à 22:25:05

                  Ben en fait je prefererais utiliser POSIX threads, la raison principale est que je n'ai pas fait le chapitre SDL, cela ne m'interressait pas.
                  pour les options eh ben sous code::blocks tout est automatisé et voila donc...
                  y a pas nmoyen de faire une installation manuelle ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 avril 2006 à 23:17:37

                    Citation : Koral

                    Ben en fait je prefererais utiliser POSIX threads, la raison principale est que je n'ai pas fait le chapitre SDL, cela ne m'interressait pas.
                    pour les options eh ben sous code::blocks tout est automatisé et voila donc...
                    y a pas nmoyen de faire une installation manuelle ?


                    Si :

                    http://sourceware.org/pthreads-win32/
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Music only !
                      27 avril 2006 à 18:22:45

                      c'est sur ton lien que je l'ai telechargé, et comme je te dit, apres avoir copié les libs dans 'lib' et les includes dans 'include' j'obtient :

                      Citation : compilo

                      Compiling: tests.c
                      Linking console executable: C:\Documents and Settings\Administrator\My Documents\tests.exe
                      .objs\tests.o:tests.c:(.text+0x76): undefined reference to `_imp__pthread_create'
                      .objs\tests.o:tests.c:(.text+0x9a): undefined reference to `_imp__pthread_create'
                      collect2: ld returned 1 exit status
                      Process terminated with status 1 (0 minutes, 2 seconds)

                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 avril 2006 à 22:05:41

                        Hum, tu as lu la doc ? Je vois ça par exemple :

                        Citation

                        Building applications with GNU compilers
                        ----------------------------------------

                        If you're using pthreadGC.dll:

                        With the three header files, pthreadGC.dll and libpthreadGC.a in the
                        same directory as your application myapp.c, you could compile, link
                        and run myapp.c under Mingw32 as follows:

                        gcc -o myapp.exe myapp.c -I. -L. -lpthreadGC
                        myapp

                        Or put pthreadGC.dll in an appropriate directory in your PATH,
                        put libpthreadGC.a in your system lib directory, and
                        put the three header files in your system include directory,
                        then use:

                        gcc -o myapp.exe myapp.c -lpthreadGC
                        myapp


                        If you're using pthreadGCE.dll:

                        With the three header files, pthreadGCE.dll, gcc.dll and libpthreadGCE.a
                        in the same directory as your application myapp.c, you could compile,
                        link and run myapp.c under Mingw32 as follows:

                        gcc -x c++ -o myapp.exe myapp.c -I. -L. -lpthreadGCE
                        myapp

                        Or put pthreadGCE.dll and gcc.dll in an appropriate directory in
                        your PATH, put libpthreadGCE.a in your system lib directory, and
                        put the three header files in your system include directory,
                        then use:

                        gcc -x c++ -o myapp.exe myapp.c -lpthreadGCE
                        myapp


                        ( ftp://sources.redhat.com/pub/pthreads-win32/dll-latest/README )
                        • Partager sur Facebook
                        • Partager sur Twitter
                          29 avril 2006 à 11:14:57

                          J'AI REUSSI, il suffisait d'aller dans 'build option' et d'ajouter 'libpthreadGC2.a' dans 'linker'...
                          • Partager sur Facebook
                          • Partager sur Twitter

                          POSIX threads

                          × 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