Compiler GLEW sous windows (MinGW)

Bonjour,
tout est dans le titre je n'arrive pas a compiler le bibliothèque glew.
j'ai trouvé des code a mettre dans des .bat
par exemple :
gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o src/glew.o -c src/glew.c

gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

# Create glew32.dll
ar cr lib/libglew32.a src/glew.o

mais sa me repond pour chaque ligne de code cette commmande n'est pas reconnu en tant que commande interne...(mais je pense que je m'y prend mal)
quelqu'un aurait une solution pour compiler glew (sa fait trois jours que je cherche sur google sans succés)
merci

16 réponses

  1. je sais pas faire
    0
    1. Contributeur
      Et bien, ce que tu fais avec le bat revient à ça. Apprend. Ou essai de trouver un makefile réaliser pour Windows.
      0
    2. il y a un makefile dans le dossier source de glew mais je sais pas m'en servir
      0
    3. Contributeur
      "make -f makefile"
      Et encore, make va directement chercher un fichier nommé "makefile" donc juste taper make.
      S'il est fait pour windows et que les variables de chemins sont correctement configurer, ça devrait fonctionner.
      0
    4. je tape juste make dans un batch ?
      0
    5. Contributeur
      oui. Dans le dossier du makefile tout de même.
      0
  2. Contributeur
    essai de compiler en ligne de commande un programme qui compile sous codeblock.
    0
    1. avec codeblock je peut compiler des programmes sans probleme et pour liblto il est deja dans 5 dossier différents et il y a un .dll.a dans C:\CodeBlocks\MinGW\lib\gcc\mingw32\4.7.1
      0
      1. Contributeur
        "gcc: error: createprocess: no such file or directory "
        cette erreur me semble assez grave, je pense que gcc est mal installé. Essai de compiler un hello world.

        " gcc: fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found "
        je pense plus à une erreur de dossier. Regarde dans les divers dossiers s'il n'y a pas un liblto_plugin-0.lib ou .a ou .def.
        0
        1. je met les seules informations qui s'affichent :
          premierre ligne :

          gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.o -c C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.c


          gcc: error: createprocess: no such file or directory
          deuxieme ligne :

          gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

          gcc: fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found
          compilation terminated

          3eme

          ar cr lib/libglew32.a src/glew.o


          elle marche (je pense rien n'est affiché)

          glew.c est dans C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.c

          et glew.o sans C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.o

          liblto_plugin-0.dll est dans

          - C:\CodeBlocks\MinGW\libexec\gcc\mingw32\4.7.1
          - C:\CodeBlocks\MinGW\bin
          - C:\Windows
          - C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0
          - C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\bin

          pour rappel le code est :

          gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o src/glew.o -c src/glew.c

          gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

          ar cr lib/libglew32.a src/glew.o

          qui fais la même chose que :

          mkdir lib/
          mkdir bin/
          gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o src/glew.o -c src/glew.c
          gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

          # Create library file: lib/libglew32.dll.a
          ar cr lib/libglew32.a src/glew.o

          # Create pkg-config file (optional if you just want a lib)
          sed \
          -e "s|@prefix@|/usr|g" \
          -e "s|@libdir@|/usr/lib|g" \
          -e "s|@exec_prefix@|/usr/bin|g" \
          -e "s|@includedir@|/usr/include/GL|g" \
          -e "s|@version@|1.6.0|g" \
          -e "s|@cflags@||g" \
          -e "s|@libname@|GLEW|g" \
          < glew.pc.in > glew.pc

          gcc -DGLEW_NO_GLU -DGLEW_MX -O2 -Wall -W -Iinclude -DGLEW_BUILD -o src/glew.mx.o -c src/glew.c
          gcc -shared -Wl,-soname,libglew32mx.dll -Wl,--out-implib,lib/libglew32mx.dll.a -o lib/glew32mx.dll src/glew.mx.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

          # Create library file: lib/libglew32mx.dll.a
          ar cr lib/libglew32mx.a src/glew.mx.o

          # Create pkg-config file (optional if you just want a lib)
          sed \
          -e "s|@prefix@|/usr|g" \
          -e "s|@libdir@|/usr/lib|g" \
          -e "s|@exec_prefix@|/usr/bin|g" \
          -e "s|@includedir@|/usr/include/GL|g" \
          -e "s|@version@|1.6.0|g" \
          -e "s|@cflags@|-DGLEW_MX|g" \
          -e "s|@libname@|GLEWmx|g" \
          < glew.pc.in > glewmx.pc

          # Make the glew visualinfo program. Skip this if you want just the lib
          gcc -c -O2 -Wall -W -Iinclude -o src/glewinfo.o src/glewinfo.c
          gcc -O2 -Wall -W -Iinclude -o bin/glewinfo.exe src/glewinfo.o -Llib -lglew32 -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
          gcc -c -O2 -Wall -W -Iinclude -o src/visualinfo.o src/visualinfo.c
          gcc -O2 -Wall -W -Iinclude -o bin/visualinfo.exe src/visualinfo.o -Llib -lglew32 -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32

          (j'ai enlevé les lignes avec des '#')

          lui a juste une erreur pour mkdir lib/ et mkdir bin/ qui mettent que la command n'est pas reconnue

          c'est tout ce que peut te dire
          0
          1. marche pas je vais essayer un autre bat

            edit : marche pas non plus memes erreurs
            0
            1. Contributeur
              Moins tu mets d'info moins on peut t'aider.
              Donne nous tes erreurs et la configuration de tes répertoires. Au besoin on ira voir dans le code source.
              0
          2. Contributeur
            essai en ajoutant -Lc:\windows à ta seconde commande.
            Mais en général de mémoire, il faut aussi des .lib ou .a
            0
            1. ou est le path c'est un dossier ? parceque moi je les met juste dans le dossier windows pour liblto je l'ai mis dans tout les repertoirs possibles mais sa marche pas et j'ai enlevé la ligne avec #
              c'est peut etre le problemme du dossier introuvable qui fait qu'il ne trouve pas liblto est-ce que je dois mettre le chemin relatif ? si oui comment ?
              merci
              0
              1. Contributeur
                mouai. Tes informations sont parcelaire, difficile de répondre
                Il y a le PATh, répertoire de recherche des programmes par la console, et il y a les répertoire de recherche du compilateur, qui ne sont pas les même.
                Ta DLL, il faut la mettre dans windows pour l'exécution, mais pour la compilation il risque de ne pas trouver. Mets la dans /lib/mingw, car au moins tu es sur qu'il va chercher dedans.
                # n'est pas un commentaire sous windows (si tu fais bien un .bat)
                0
                1. pour le chemin absolu c'est le bon, pour liblto_plugin-0.dll je l'ai mis dans le dossier windows il faut le mettre ou ? et pour # Create glew32.dll c'est pas juste une information comme les // en c++
                  0
                  1. Contributeur
                    Hum, encore un problème de chemin. Il faut faire attention entre répertoire absolue, relatif etc.
                    0
                    1. premierre ligne :

                      gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude -DGLEW_BUILD -o C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.o -c C:\Users\RedSkidy\Desktop\zip_GLEW_SDL\glew-1.10.0\src\glew.c

                      gcc: error: createprocess: no such file or directory
                      deuxieme ligne :

                         gcc -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
                      gcc: fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found
                      compilation terminated
                      3eme

                      # Create glew32.dll

                      # n'est pas reconnu...

                      4eme

                      ar cr lib/libglew32.a src/glew.o

                      elle marche (je pense rien n'est affiché)
                      0
                      1. Contributeur
                        Soit plus explicite STP.
                        0
                        1. merci maintenant sa marche presque mais il me dit no such file or directory alors que le fichier existe
                          0
                          1. Contributeur
                            Salut.
                            D'après l'erreur, je suppose que tes commandes de compilation (gcc ar ld etc.) ne sont pas dans ton PATH. L'invité de commande ne les trouve donc pas.
                            Il faut ajouter le dossier bin de mingw dans le PATH.
                            Après, certaines bibliothèques sont spécifiques et ne se compile pas sous windows.
                            0