Je suis nouveau sur Qt et j'ai une erreur que je n'arrive pas à résoudre.Qt/mingw32 erreurs de référence non définies ... impossibilité de lier un fichier .lib
J'ai un tas de fichier de bibliothèque statique windows (VS2005) (.lib
). Et je suis en train de tester s'ils fonctionnent bien avec Qt. J'ai donc pris la bibliothèque la plus simple que j'ai. (Appelé MessageBuffer
).
J'ajouté MessageBuffer.h
au main.cpp
, et a ajouté l'emplacement de ces fichiers dans le INCLUDEPATH
du .pro
. Jusqu'à ce que tout semble bien, je peux utiliser la classe et Qt IDE montrent toute la méthode et tout. Donc, pour moi, on dirait qu'il a trouvé le fichier .h.
Maintenant, j'ajouté le MessageBuffer.lib
(VS2005/Debug) dans le .pro
comme ceci:
LIBS += E:/SharedLibrary/lib/MessageBufferd.lib
J'ai également essayé les suivantes:
win32:LIBS += E:/SharedLibrary/lib/MessageBufferd.lib
LIBS += -LE:/SharedLibrary/lib -lMessageBufferd
win32:LIBS += -LE:/SharedLibrary/lib -lMessageBufferd
Voici le contenu de mon dossier .pro
:
QT += opengl
TARGET = SilverEye
TEMPLATE = app
INCLUDEPATH += E:/SharedLibrary/MessageBuffer
SOURCES += main.cpp \
silvereye.cpp
HEADERS += silvereye.h
FORMS += silvereye.ui
OTHER_FILES +=
win32:LIBS += E:/SharedLibrary/lib/MessageBufferd.lib
Ils me donnent tous le même erro rs: (et je reçois le même, même si je ne comprennent pas le .lib
)
Running build steps for project SilverEye...
Configuration unchanged, skipping QMake step.
Starting: C:/Qt/2009.03/mingw/bin/mingw32-make.exe -w
mingw32-make: Entering directory `C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye'
C:/Qt/2009.03/mingw/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -Wl,-subsystem,windows -o debug\SilverEye.exe debug/main.o debug/silvereye.o debug/moc_silvereye.o -L"c:\Qt\2009.03\qt\lib" -lopengl32 -lglu32 -lgdi32 -luser32 -lmingw32 -lqtmaind E:/SharedLibrary/lib/MessageBufferd.lib -lQtOpenGLd4 -lQtGuid4 -lQtCored4
mingw32-make[1]: Leaving directory `C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye'
mingw32-make: Leaving directory `C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye'
debug/main.o: In function `Z5qMainiPPc':
C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye/main.cpp:12: undefined reference to `MessageBuffer::MessageBuffer()'
C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye/main.cpp:13: undefined reference to `MessageBuffer::Append(char*, int)'
C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye/main.cpp:17: undefined reference to `MessageBuffer::~MessageBuffer()'
C:/Documents and Settings/JP/My Documents/QTProjects/SilverEye/main.cpp:17: undefined reference to `MessageBuffer::~MessageBuffer()'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\SilverEye.exe] Error 1
mingw32-make: *** [debug] Error 2
Exited with code 2.
Error while building project SilverEye
When executing build step 'Make'
peut-elle aider quelqu'un s'il vous plaît?
Pouvez-vous poster le fichier pro que vous utilisez? –
vient d'ajouter le contenu du fichier pro dans le message d'origine. –
merci. fichier pro semble bien. –