Bienvenue sur le forum !

Si vous souhaitez rejoindre la communauté, cliquez sur l'un de ces boutons !

Qt 5 : 5.8.0 - Qt Creator : 4.2.2 - Qt Installer : 2.0.3 - JOM : 1.1.2 - Qt Build suite : 1.7.0 - VS Qt 5 : 2.0.0

[Qt4-Win] Problème à la compilation avec Qt

Bonjour,

J'ai fait un programme avec Qt utilisant des headers et librairies externes, que j'ai donc "linké" dans mon fichier .pro:




CONFIG += console
TEMPLATE = app
TARGET =
DEPENDPATH += . Communication_UDP
INCLUDEPATH += . include/Headers_Haptics
LIBS += Librairies/ws2_32.lib
LIBS += Librairies/Librairies_Haptics/hd.lib
LIBS += Librairies/Librairies_Haptics/hdu.lib
LIBS += Librairies/Librairies_Haptics/hdud.lib

# Input
HEADERS += Communication_UDP/fenetrePrincipale.h Communication_UDP/main.h
SOURCES += Communication_UDP/fenetrePrincipale.cpp Communication_UDP/main.cpp






Cependant je n'arrive pas à compiler, même en liant les librairies et les headers correspondants.
Le programme sans la partie Qt compilait très bien sous visual studio 2008, mais impossible de compiler avec Qt.
J'obtiens comme erreur:





C:\Users\Christophe\Desktop\Projet_G3\Programmes\Communication_UDP - Haptics>qma
ke

C:\Users\Christophe\Desktop\Projet_G3\Programmes\Communication_UDP - Haptics>mak
e
mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Users/Christophe/Desktop/Projet_G3/Progr
ammes/Communication_UDP - Haptics'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c:\Qt\4.4.3\include\Qt
Core" -I"c:\Qt\4.4.3\include\QtCore" -I"c:\Qt\4.4.3\include\QtGui" -I"c:\Qt\4.4.
3\include\QtGui" -I"c:\Qt\4.4.3\include" -I"." -I"..\..\..\Dependances\Headers_H
aptics" -I"c:\Qt\4.4.3\include\ActiveQt" -I"debug" -I"." -I"c:\Qt\4.4.3\mkspecs\
win32-g++" -o debug\fenetrePrincipale.o Communication_UDP\fenetrePrincipale.cpp
In file included from Communication_UDP\fenetrePrincipale.cpp:1:
Communication_UDP\/FenetrePrincipale.h:25:7: warning: no newline at end of file
Communication_UDP\fenetrePrincipale.cpp:112:2: warning: no newline at end of fil
e
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c:\Qt\4.4.3\include\Qt
Core" -I"c:\Qt\4.4.3\include\QtCore" -I"c:\Qt\4.4.3\include\QtGui" -I"c:\Qt\4.4.
3\include\QtGui" -I"c:\Qt\4.4.3\include" -I"." -I"..\..\..\Dependances\Headers_H
aptics" -I"c:\Qt\4.4.3\include\ActiveQt" -I"debug" -I"." -I"c:\Qt\4.4.3\mkspecs\
win32-g++" -o debug\main.o Communication_UDP\main.cpp
In file included from Communication_UDP\main.cpp:26:
Communication_UDP\/main.h:15:7: warning: no newline at end of file
In file included from Communication_UDP\main.cpp:27:
Communication_UDP\/fenetrePrincipale.h:25:7: warning: no newline at end of file
Communication_UDP\main.cpp:31: warning: ignoring #pragma comment
Communication_UDP\main.cpp: In function `void createThreads()':
Communication_UDP\main.cpp:455: warning: passing NULL used for non-pointer conve
rting 2 of `void* CreateThread(_SECURITY_ATTRIBUTES*, DWORD, DWORD (*)(void*), v
oid*, DWORD, DWORD*)'
Communication_UDP\main.cpp:456: warning: passing NULL used for non-pointer conve
rting 2 of `void* CreateThread(_SECURITY_ATTRIBUTES*, DWORD, DWORD (*)(void*), v
oid*, DWORD, DWORD*)'
Communication_UDP\main.cpp:692:2: warning: no newline at end of file
C:\Qt\4.4.3\bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -
DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c:\Qt\4.4.3\include\QtCore" -I"c:\Qt\4.4.3\i
nclude\QtCore" -I"c:\Qt\4.4.3\include\QtGui" -I"c:\Qt\4.4.3\include\QtGui" -I"c:
\Qt\4.4.3\include" -I"." -I"..\..\..\Dependances\Headers_Haptics" -I"c:\Qt\4.4.3
\include\ActiveQt" -I"debug" -I"." -I"c:\Qt\4.4.3\mkspecs\win32-g++" -D__GNUC__
-DWIN32 Communication_UDP\fenetrePrincipale.h -o debug\moc_fenetrePrincipale.cpp

g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c:\Qt\4.4.3\include\Qt
Core" -I"c:\Qt\4.4.3\include\QtCore" -I"c:\Qt\4.4.3\include\QtGui" -I"c:\Qt\4.4.
3\include\QtGui" -I"c:\Qt\4.4.3\include" -I"." -I"..\..\..\Dependances\Headers_H
aptics" -I"c:\Qt\4.4.3\include\ActiveQt" -I"debug" -I"." -I"c:\Qt\4.4.3\mkspecs\
win32-g++" -o debug\moc_fenetrePrincipale.o debug\moc_fenetrePrincipale.cpp
In file included from debug\moc_fenetrePrincipale.cpp:10:
debug\/../Communication_UDP/fenetrePrincipale.h:25:7: warning: no newline at end
of file
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -Wl,-subsystem,console -mthreads -Wl -o "debug\Communication_UDP - Haptics.ex
e" debug/fenetrePrincipale.o debug/main.o debug/moc_fenetrePrincipale.o -L"c:\Q
t\4.4.3\lib" Librairies/ws2_32.lib Librairies/Librairies_Haptics/hd.lib Librairi
es/Librairies_Haptics/hdu.lib Librairies/Librairies_Haptics/hdud.lib -lQtGuid4 -
lQtCored4
Warning: .drectve `/manifestdependency:"type='win32' name='Microsoft.VC90.CRT' v
ersion='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3
b'" /DEFAULTLIB:"msvcprt" /manifestdependency:"type='win32' name='Microsoft.VC90
.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9
a1e18e3b'" /DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"uuid.lib" /DEFAULTLIB:"MSVCRT" /D
EFAULTLIB:"OLDNAMES" ' unrecognized
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[_hduPrintErr
or]+0x2a): undefined reference to `_imp__hdGetErrorString@4'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??0_Sentry_b
ase@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z]+0x1b): undefined
reference to `_imp_?_Lock@_Mutex@std@@QAEXXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??1_Sentry_b
ase@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ]+0x14): undefined refere
nce to `_imp_?_Unlock@_Mutex@std@@QAEXXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??0sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z]+0x12): undefined refere
nce to `__security_cookie'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??0sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z]+0x41): undefined refere
nce to `_imp_?_Lock@_Mutex@std@@QAEXXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??0sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@AAV12@@Z]+0x65): undefined refere
nce to `_imp_?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x15): und
efined reference to `@__security_check_cookie@4'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x1f): und
efined reference to `__CxxFrameHandler3'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??1sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ]+0x11): undefined reference to
`__security_cookie'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??1sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ]+0x32): undefined reference to
`_imp_?uncaught_exception@std@@YA_NXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??1sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ]+0x3e): undefined reference to
`_imp_?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??1sentry@?$
basic_ostream@DU?$char_traits@D@std@@@std@@QAE@XZ]+0x5e): undefined reference to
`_imp_?_Unlock@_Mutex@std@@QAEXXZ'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x15): und
efined reference to `@__security_check_cookie@4'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x1f): und
efined reference to `__CxxFrameHandler3'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0x18): undefined reference to `__security_cookie'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0xae): undefined reference to `_imp_?sputc@?$basic_streambuf@DU?$char_traits@D@
std@@@std@@QAEHD@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0xd1): undefined reference to `_imp_?sputn@?$basic_streambuf@DU?$char_traits@D@
std@@@std@@QAEHPBDH@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0xfe): undefined reference to `_imp_?setstate@?$basic_ios@DU?$char_traits@D@std
@@@std@@QAEXH_N@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0x14e): undefined reference to `_imp_?sputc@?$basic_streambuf@DU?$char_traits@D
@std@@@std@@QAEHD@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??$?6U?$char
_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z]
+0x170): undefined reference to `_imp_?setstate@?$basic_ios@DU?$char_traits@D@st
d@@@std@@QAEXH_N@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x15): und
efined reference to `@__security_check_cookie@4'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text$x+0x1f): und
efined reference to `__CxxFrameHandler3'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x1): undefi
ned reference to `_imp_?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1
@AAV21@@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x37): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@P6AAAV01@AAV01@@Z@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x3d): undef
ined reference to `_imp_?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@
1@AAV21@@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x47): undef
ined reference to `_imp__hdGetErrorString@4'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x59): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@P6AAAV01@AAV01@@Z@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x64): undef
ined reference to `_imp_?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@
1@AAV21@@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x89): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@I@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x91): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@P6AAAV01@AAV01@@Z@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0x97): undef
ined reference to `_imp_?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@
1@AAV21@@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0xb1): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@I@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0xb9): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@P6AAAV01@AAV01@@Z@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0xc4): undef
ined reference to `_imp_?endl@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@
1@AAV21@@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0xe9): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@H@Z'
Librairies/Librairies_Haptics/hdu.lib(./Release/hduError.obj)(.text[??6@YAAAV?$b
asic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABUHDErrorInfo@@@Z]+0xf1): undef
ined reference to `_imp_??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01
@P6AAAV01@AAV01@@Z@Z'
collect2: ld returned 1 exit status
mingw32-make[1]: *** ["debug\Communication_UDP] Error 1
mingw32-make[1]: Leaving directory `C:/Users/Christophe/Desktop/Projet_G3/Progra
mmes/Communication_UDP - Haptics'
mingw32-make: *** [debug] Error 2



Est-ce que quelqu'un pourrait m'aider à résoudre ce problème?

Merci.

Réponses

  • Tu utilises MinGW pour compiler avec Qt et MinGW nécessite des fichiers de liens en .a (différents des .lib de VisualStudio).
    Donc, tu as deux solutions :
    - te procurer les bons fichiers d'édition de lien
    - recompiler Qt pour qu'il fonctionne avec VS2008 (et là tes fichiers .lib seront bons)
  • December 2008 modifié
    Merci pour ta réponse aussi rapide chsxf :)
    Hmmm comment fait-on pour recompiler Qt? :s

    Edit: Ah j'ai trouvé un lien, mais ça dit que même si on a Visual Studio 2008 pro (c'est mon cas), il faut la version commerciale et non open-source de Qt :(

    Est-il possible de créer ce fichier .a à partir du code source en C++ de la librairie? Sinon, existe-t-il d'autres méthodes? :(
    Merci d'avance :(
  • A priori, je ne vois pas ce qui pourrait empêcher (techniquement) d'utiliser la version OpenSource de Qt avec VisualStudio 2008.
    La technique est de créer un projet Makefile qui fait appel à qmake avant de lancer nmake.

    Pour recompiler Qt, tu as un utilitaire appelé configure dans le répertoire de Qt. Attention la procédure est très très longue (environ 4 heures chez moi)
  • Oui, il est possible de créer le fichier .a en recompilant la bibliothèque grâce à MinGW.
    Reste à savoir si elle est compatible avec g++.

    Il existe également un utilitaire appelé reimp (non livré en standard avec MinGW mais téléchargeable) qui permet dans certains cas de créer les .a à partir de la dll et du lib original.
    Mais je ne l'ai jamais utilisé.
  • December 2008 modifié
    il suffit de lancer le programme "configure.exe"?

    Ps: je pensais que ce n'était pas possible de faire ça avec la version open source de Qt suite à la lecture de ce post: http://forum.qtfr.org/viewtopic.php?id=4803

    Ps2: Merci encore énormément pour ton aide :)
  • Lance la commande "configure.exe -h" pour avoir la liste des très nombreuses options disponibles et configure Qt selon tes besoins.

    Pour configurer Qt pour Visual Studio 2008, il te faudra préciser à un moment donné l'option "-spec win32-msvc2008"
  • mstarsup5 said:
    Ps: je pensais que ce n'était pas possible de faire ça avec la version open source de Qt suite à la lecture de ce post: http://forum.qtfr.org/viewtopic.php?id=4803
    En effet, avec la version OpenSource de Qt, tu ne bénéficies pas des outils "intégrés" à VisualStudio, mais rien ne t'empêche de concevoir et de compiler.
    Il faut simplement créer un projet Makefile qui fait appel à qmake avant de lancer nmake et de maintenir à la fois la liste des fichiers du projet dans VisualStudio (pour les retrouver plus facilement) et dans le .pro (pour que Qt compile tout correctement).
  • ok, donc je lance configure.exe avec des options choisies, et ça recompile direct Qt.

    Pour pouvoir compiler mon projet, (donc en fait pour bien lire les .lib), il me faut lancer configurer.exe -spec win32-msvc2008 ? :/
    Il n'y a pas cette commande qui apparaît lorsque je fais compiler.exe -h :(
  • Oui, pardon, c'est "configure.exe -platform win32-msvc2008" mais avec cette ligne de commande, tu vas te limiter aux modules par défaut et il y en a peut-être que tu souhaites avoir (webkit, phonon, etc...). Lis bien toutes les instructions fournis par configure avant de voir comment tu veux configurer Qt.

    Une fois que tu lances la commande, la configuration de Qt est lancée. Elle se termine assez rapidement, au terme de quoi tu dois juste taper nmake pour lancer la compilation.
  • Ok, merci beaucoup, je relis les différentes options, je lance, compile, et te tiens au courant pour la suite :)
    Après, une fois que tout cela est fait, pour compiler un projet, ça se fait pareil? (qmake -project qmake make) ?

    Encore une fois, merci infiniment pour ton aide, ça fait depuis ce matin que je cherche une solution pour ce problème de compilation, et grâce à toi j'arrive enfin à apercevoir une lueur d'espoir :')
  • December 2008 modifié
    J'ai lancé la commande "configure.exe -platform win32-msvc2008" sans autre ajout, ça a erminé la configuration normalement, mais quand je lance nmake, ça plante:




    Qt is now configured for building. Just run nmake.
    To reconfigure, run nmake confclean and configure.


    C:\Qt\4.4.3>nmake

    Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
    Copyright (C) Microsoft Corp 1988-1998. All rights reserved.

    cd src\winmain\ && NMAKE -f Makefile

    Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
    Copyright (C) Microsoft Corp 1988-1998. All rights reserved.

    NMAKE -f Makefile.Debug all

    Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
    Copyright (C) Microsoft Corp 1988-1998. All rights reserved.

    cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -W3 -w34100 -w34189 -GR -EHsc
    -DQT_THREAD_SUPPORT -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_AS
    CII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -D_USE_MATH_DEFINES -
    I"..\..\include" -I"tmp" -I"..\..\include\QtCore" -I"c:\Qt\4.4.3\include\qtmain"
    -I"tmp\rcc\debug_shared" -I"tmp" -I"c:\Qt\4.4.3\include\ActiveQt" -I"tmp\moc\de
    bug_shared" -I"." -I"..\..\mkspecs\win32-msvc2008" -Fotmp\obj\debug_shared\ @C:\
    Users\CHRIST~1\AppData\Local\Temp\nma06772.
    Command line warning D4002 : ignoring unknown option '-Zc'
    Command line warning D4002 : ignoring unknown option '-Z:'
    Command line warning D4002 : ignoring unknown option '-Zw'
    Command line warning D4002 : ignoring unknown option '-Zc'
    Command line warning D4002 : ignoring unknown option '-Zh'
    Command line warning D4002 : ignoring unknown option '-Zr'
    Command line warning D4002 : ignoring unknown option '-Z_'
    Command line warning D4002 : ignoring unknown option '-Zt'
    Command line warning D4002 : ignoring unknown option '-Z-'
    Command line warning D4002 : ignoring unknown option '-w34100'
    Command line warning D4002 : ignoring unknown option '-w34189'
    qtmain_win.cpp
    C:\Program Files\Microsoft Visual Studio\VC98\include\winnt.h(357) : error C2467
    : illegal declaration of anonymous 'struct'
    C:\Program Files\Microsoft Visual Studio\VC98\include\winnt.h(376) : error C2467
    : illegal declaration of anonymous 'struct'
    C:\Program Files\Microsoft Visual Studio\VC98\include\winnt.h(1519) : error C214
    6: syntax error : missing ';' before identifier 'PVOID'
    C:\Program Files\Microsoft Visual Studio\VC98\include\winnt.h(1519) : error C250
    1: '_inline' : missing storage-class or type specifiers
    C:\Program Files\Microsoft Visual Studio\VC98\include\winnt.h(1519) : fatal erro
    r C1004: unexpected end of file found
    NMAKE : fatal error U1077: 'cl' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\bin\N
    MAKE.EXE"' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.




    Edit: Hmmmm il est entrain d'essayer de regarder dans VC98, il faut que je vire ce dossier pour qu'il regarde dans visual studio 9/VC ?
    C'est de là que vient le problème? :s
  • Tu as quelle version de Visual Studio ? Parce que là, on dirait que tu Visual Studio 6...
    Normalement, la version de nmake devrait être 9.qqchose, or toi c'est une version 6 :
    Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
  • December 2008 modifié
    J'ai les deux en fait (version 6 et version 9 (visual studio 2008 pro) ... La version 6 c'était pour mes progs en VB6... Je la désinstalle
  • Bonsoir,

    J'ai enfin réussi à faire marcher mon appli, grâce à tes conseils :)
    Après mon dernier post, j'avais des soucis car Qt n'acceptait plus d'être reconfiguré avec configure.exe, j'ai cherché et je suis tombé sur cette page: http://www.developpez.net/forums/d593888/c-cpp/bibliotheques/qt/how-to-qt-4-4-x-open-source-sous-visual-cpp-professional-2008-a/
    J'ai utilisé QtBuilder pour reconfigurer/recompiler Qt, et la méthode donnée pour rendre compatible Visual Studio 2008 et Qt.
    Ca a très bien marché, les compilations se font bien, et truc sympa: les classes de Qt sont toutes reconnues par visual studio :)

    Encore un grand merci chsxf, sans toi je crois bien que j'aurais abandonné, merci infiniment pour ton aide :°)
  • December 2008 modifié
    Rebonjour,

    J'ai un nouveau petit souci, j'ai compilé mon projet, tout marche bien, mais dès que je le passe sur un autre ordinateur (celui sur lequel je dois utiliser ce programme), ça plante (erreur de lancement: "Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. Réinstaller l'application pourrait résoudre ce problème".)

    Cela marchait très bien avant quand je compilais sous visual studio sans Qt, ça marchait très bien si je compilais un programme utilisant simplement Qt (en compilant avec la console Qt), mais en utilisant Visual + Qt pour compiler (ce qui marche maintenant depuis la manip d'hier), mon programme ne passe pas dès que je le mets sur un autre ordinateur.

    Saurais-tu comment contourner ce problème?
    J'ai installé la runtime C sur l'autre ordinateur, mais j'ai quand même l'erreur :(

    Merci!
  • Salut !

    Ça doit venir des dll...
    Quand tu as compiler tu a bien inclus toutes les libs ?
    Es-ce que ton appli est compiler en release?

    Cordialement
  • Il nous faudrait effectivement plus d'informations sur les fichiers que tu fournis avec ton exécutable.
  • December 2008 modifié
    Hello :)

    J'ai compilé en mode debug (QtBuilder m'avait demandé quelle config il me fallait, j'avais demandé Debug, et Shared (dll)), et bien compilé avec toutes les libs (toutes incluses dans le .pro)
    Dans le dossier debug, la compilation m'a créé:
    des fichiers .obj, dont un : moc_fenetrePrincipale (fenetrePrincipale étant un de mes fichiers .h et .cpp),
    un fichier moc_fenetrePrincipale.cpp
    le .exe,
    un .pbd,
    un.ilk,
    et un .intermediate.manifest
    (les 3 derniers portant le nom du projet)

    Sinon avec mon .exe, je fournis la runtime C (à installer si jamais), et comme .dll: des .dll nécessaires pour le fonctionnement d'un robot que j'utilise + des .dll de Qt: QtCore4 (et QtCored4), QtGui4 (et QtGuid4), et pour l'instant mingwm10.dll parce que je ne l'avais pas retirée après être passé à la compil Qt/Visual
  • December 2008 modifié
    mstarsup5 said:
    Après mon dernier post, j'avais des soucis car Qt n'acceptait plus d'être reconfiguré avec configure.exe, j'ai cherché et je suis tombé sur cette page: http://www.developpez.net/forums/d593888/c-cpp/bibliotheques/qt/how-to-qt-4-4-x-open-source-sous-visual-cpp-professional-2008-a/
    J'ai utilisé QtBuilder pour reconfigurer/recompiler Qt, et la méthode donnée pour rendre compatible Visual Studio 2008 et Qt.
    C'est vrai qu'il est intéressant ce thread mais regarde un peu plus bas c'est indiqué ce que tu cherche ^^ numéro 8 par Mongaulois en plus ^^
    Neocid said:
    Quand aux applications créées voila ce que j'en ai tiré :
    Une application compilé avec Visual C++/Qt recompilé ne tourne que sur le pc qui l'a compilé.
    Sinon il te retourne une erreur "Erreur de configuration de l'application, une réinstallation pourrait résoudre le problème".
    Mongaulois said:
    Non. Ton problème est un problème de redist. Il te faut ajouter les quelque dll de visual. Avec QtBuilder, tu peut spécifier l'utilisation de version static des lib visual, et donc plus de problème.
  • Oui, j'avais lu ce post, seulement ça ne marchait pas configuré comme ça ce matin (c'est pour ça que j'ai essayé en mode shared .dll après d'ailleurs) et donc essayé la méthode décrite dans le post de Mongaulois n°11, qui ne marche pas non plus pour moi malheureusement.
  • December 2008 modifié
    Je viens (d'essayer) d'installer Visual Studio 2008 sur l'autre PC (il faudra que je le retire plus tard, le PC est très vieux, plein de bugs, et capacité totale du DD: 15Go...)

    Maintenant, l'application se "lance" mais erreur dès le début:

    "le point d'entrée ?minimumSizeHint@QroupBox@@UBE?AVQSize@@XZ est introuvable dans la bibliothèque de liaisons dynamiques QtGuid4.dll"

    Je vais essayer d'installer Qt aussi sur ce PC, je vous dit si ça va mieux après.

    (Mais si vous savez d'où vient le problème cité ci dessus, n'hésitez pas à m'en faire part :p )

    Encore missi :)
  • December 2008 modifié
    Edit: j'ai installé Qt aussi sur cet ordinateur, mais rien à faire, toujours le même message d'erreur...
    Pour couronner le tout, il y a un problème avec Visual Studio sur l'ordi en question, et je ne peux pas tester si la compilation marche sur cet ordinateur, donc euh... ben je ne peux pas apporter plus de précisions de ce côté :)


    Edit: après être revenu dans ma configuration précédente (Debug, static .lib), et l'installation de visual studio et de Qt donc, ça marche...
    Mais bizarre que ça n'ait pas marché ce matin avec la même configuration de Qt, mais sans que Qt et visual studio soient installés sur le 2ème ordinateur...
  • Tu fournis bien la dll QtGui4d.dll (attention à la présence du d à la fin du nom du fichier qui signifie que c'est une lib debug) ?
  • oui c'est bien celle que je donnais. d'ailleurs il arrivait à la voir, mais ça n'empêchait pas le problème apparemment: "le point d'entrée ?minimumSizeHint@QroupBox@@UBE?AVQSize@@XZ est introuvable dans la bibliothèque de liaisons dynamiques QtGuid4.dll"

    Je ne comprends pas pourquoi ça plantait...
    Enfin maintenant ça remarche, c'est l'essentiel :)

    Merci infiniment pour votre aide chsxf et Cess :)

    Peut être à un de ces jours à Montpellier qui sait :)

    A plouche :)
  • mstarsup5 said:
    Peut être à un de ces jours à Montpellier qui sait :)
    Ah oui, je n'avais pas fait gaffe que tu étais aussi de Montpellier.
  • Comme quoi le monde est petit :D
  • Ouh la la, toi aussi. OMG !
Connectez-vous ou Inscrivez-vous pour répondre.