Erreur de compilation de Qt 4 avec Visual C++ 2005

Erreur de compilation de Qt 4 avec Visual C++ 2005 - C++ - Programmation

Marsh Posté le 02-10-2007 à 07:46:07    

Bonjour à tous,

 

J'ai un problème lors de la compilation de qt 4.3.1 à l'aide du toturial Compiler Qt 4 avec Visual C++ 2005 de developpez.com, j'ai fait comme dit dans le tutorial:

 
  • Décompressé les sources de qt et le patch (4.3.x) dans un même dossier (pour moi "e:\qt4\" ).
  • Exécuter "%VS80COMNTOOLS%vsvars32.bat" dans une fenêtre invité de commande MSDOS.
  • Exécuter "%programfiles%\Microsoft Platform SDK\SetEnv.cmd" dans une fenêtre invité de commande MSDOS.
  • Exécuter le installpatch43.bat dans une fenêtre invité de commande MSDOS.
  • Exécuter la commande qconfigure.bat msvc2005 dans une fenêtre invité de commande MSDOS.
  • Créer le fichier compileqt.bat dans lequel j'ai mis le code présent dans le tuto (voir plus bas).
  • Exécuter compileqt -debug -shared dans une fenêtre invité de commande MSDOS pour compiler une version pour le débogage.
  • A un moment dans la compilation j'ai l'erreur suivante:
Citation :

NMAKE : fatal error U1073: don't know how to make 'c:\Program'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Platform SDK\Bin\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.

 

Je suppose que c'est une erreur liée à l'espace dans "Program Files" mais je n'arrive pas à trouver où elle est.

 

Si quelqu'un pourrait m'aider ça serait super.
Merci.

 

Edit: si ça peut aider, l'erreur tombe juste après ça:

Citation :

E:/qt4/bin/moc.exe -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE -DQT_LARGEFILE_SUPPORT -DWIN32 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DQT_BUILD_CORE_LIB -DQT_MAKEDLL -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -D_USE_MATH_DEFINES -DQT_DLL -I"..\..\include" -I"..\..\include\QtCore" -I"tmp" -I"global" -I"..\3rdparty\zlib" -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" -I"." -I"c:\Program Files\Microsoft Platform SDK\Include" -I"c:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE" -I"c:\Program Files\Microsoft Platform SDK\Include" -I"..\..\mkspecs\win32-msvc2005" codecs\qtextcodecplugin.h -o tmp\moc\debug_shared\moc_qtextcodecplugin.cpp

 

compileqt.bat:

Code :
  1. @echo off
  2. REM Parties de la biblothèque à compiler
  3. if not defined QT_PROJECTS set QT_PROJECTS=src
  4. REM chemin vers le fichier environnement du Platform SDK
  5. set PSDK_SETENV_PATH="%programfiles%\Microsoft Platform SDK\SetEnv.cmd"
  6. REM Tester si nmake est dans le PATH
  7. for %%i in (nmake.exe) do if not "%%~$PATH:i"=="" goto ready_to_compile
  8. REM nmake n'est pas dans le PATH : executer vsvars32.bat
  9. if not defined VS80COMNTOOLS goto vcpp8_not_found
  10. if not exist %PSDK_SETENV_PATH% goto psdk_not_found
  11. call "%VS80COMNTOOLS%vsvars32.bat"
  12. call %PSDK_SETENV_PATH%
  13. :ready_to_compile
  14. REM configurer Qt
  15. configure.exe  -qt-zlib -qt-libmng -qt-libpng -qt-libjpeg -no-qmake -dont-process^
  16.     -platform win32-g++  -exceptions -rtti -stl %*
  17. if not ERRORLEVEL 0 goto end
  18. REM Tester si qmake existe
  19. if exist bin\qmake.exe goto start_qmake
  20. REM Sinon, compiler qmake
  21. cd qmake
  22. nmake -f Makefile.win32-msvc2005
  23. cd ..
  24. if not ERRORLEVEL 0 goto end
  25. :start_qmake
  26. set QMAKESPEC=win32-msvc2005
  27. bin\qmake "QT_PROJECTS=%QT_PROJECTS%"
  28. if not ERRORLEVEL 0 goto end
  29. REM compiler avec VC++
  30. nmake
  31. goto end
  32. REM gestion des erreurs
  33. :vcpp8_not_found
  34. echo Visual C++ 2005 ne semble pas installe:
  35. echo La variable d'environnement VS80COMNTOOLS n'existe pas
  36. goto end
  37. :psdk_not_found
  38. echo Le Platform SDK ne semble pas installe:
  39. echo Le fichier %PSDK_SETENV_PATH% n'existe pas
  40. :end


Message édité par grostony le 02-10-2007 à 07:53:37
Reply

Marsh Posté le 02-10-2007 à 07:46:07   

Reply

Marsh Posté le 02-10-2007 à 11:01:00    

Salut,

 

Personnellement, je n'ai jamais suivi ce tuto (j'ai un peu de mal à comprendre pourquoi il se donne tout ce mal alors qu'il y a plus simple je trouve).

 

0. et 0.bis. Installer comme il faut VS et le PSDK (c'est à dire bien les intégrer en modifiant aussi le fichier vsvars32.bat pour ajouter les includes et libs du PSDK)
1. Décompresser la dernière version de Qt
2. Décompresser le patch en question à la racine de Qt
3. Modifier l'environnement: ajouter une variable QMAKESPEC ayant pour valeur win32-msvc2005
3. Ouvrir la console
4. Appeler vsvars32.bat
5. Aller dans le dossier Qt et taper installpatch<version>.bat
6. Appeller qconfigure avec les options que tu veux (qconfigure -help pour la liste)
7. et compiler

 

Au boulot j'ai cette installation (avec "program files" comme répertoire père du PSDK et de VSE), et je n'ai jamais eu de problèmes pour aucune compil en suivant ces étapes.


Message édité par IrmatDen le 02-10-2007 à 11:07:57
Reply

Marsh Posté le 02-10-2007 à 14:07:59    

Ok,
Je testerai ça ce soir une fois rentré chez moi.
Quand tu dis compiler c'est donc juste qmake [options] ?
Par exemple:

Citation :

qmake src


Merci.

Reply

Marsh Posté le 02-10-2007 à 14:21:56    

Non, le qconfigure s'occupe de tout; je crois que tu as juste à dire oui à une ou 2 questions (genre la licence > 'y', et la compil 'y').

Reply

Marsh Posté le 02-10-2007 à 18:52:39    

Ok merci, je n'avais pas tout compris, en fait j'avais déja compilé avec "qconfigure.bat msvc2005"?
Ce que je n'arrive pas à faire c'est la partie "Configurer la compilation", mais tout ce que je veux c'est compiler en mode debug, et lors de la compilation avec "qconfigure.bat msvc2005" j'ai vu une ligne "Debug symbols...............yes" c'est que ça doit compiler en mode debug je suppose... ?

Reply

Marsh Posté le 02-10-2007 à 19:03:39    

A priori oui :)
(ne compilant pas tout les jours, je t'avouerais que je ne me souviens plus trop comment ça se présente)

Reply

Marsh Posté le 02-10-2007 à 19:56:19    

Ouais en fait à la fin du "qconfigure.bat msvc2005" il y a un message: "You are now ready to build Qt (msvc2005)" avec nmake et en précisant je ne sais plus trop quoi, donc j'ai lancé nmake et la compile est partie et n'a pas planté à l'endroit où ça plantait avant, donc je verrai bien ce que ça donne.
En tout cas merci.
@+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed