Qt 4.7 mysql Treiber erstellen

Verschiedenes zu Qt
Antworten
acdc
Beiträge: 82
Registriert: 23. Oktober 2007 18:56

Qt 4.7 mysql Treiber erstellen

Beitrag von acdc »

Hallo,
ich benutze Win7 und Qt 4.7. Dazu wollte ich mir den sqltreiber compilieren. Mit der Version 4.6 hat alles super funktioniert nur bei 4.7 nicht.

Der Einfachheit halber habe ich die Befehle in eine Batchdatei zusammen gefasst:

Code: Alles auswählen

path=%path%;C:\Qt\2010.05\qt\bin
path=%path%;C:\Qt\2010.05\mingw\bin
cd C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=C:/mysql/include" "LIBS+=C:/mysql/lib/libmysql.lib" mysql.pro
pause
mingw32-make.exe
starte ich nun die Batchdatei so erscheint folgende Ausgabe:

...

C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql>qmake "INCLUDEPATH+=C:/mysql/inclu
de" "LIBS+=C:/mysql/lib/libmysql.lib" mysql.pro

C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql>pause
Drücken Sie eine beliebige Taste . . .

C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql>mingw32-make.exe
mingw32-make.exe -f Makefile.Debug all
mingw32-make.exe[1]: Entering directory `C:/Qt/2010.05/qt/src/plugins/sqldrivers
/mysql'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -mthreads -Wl -shared -Wl,--out-implib,c:\Qt\2010.05\qt\plugins\sqldrivers\li
bqsqlmysqld4.a -o ..\..\..\..\plugins\sqldrivers\qsqlmysqld4.dll tmp/obj/debug_s
hared/main.o tmp/obj/debug_shared/qsql_mysql.o tmp/obj/debug_shared/moc_qsql_mys
ql.o -L"c:\Qt\2010.05\qt\lib" -L"c:\Program Files\SQLXML 4.0\bin\" -L"c:\Qt\201
0.05\qt\lib" tmp\obj\debug_shared\qsqlmysqld_resource_res.o C:/mysql/lib/libmysq
l.lib -lQtSqld4 -lQtCored4
Creating library file: c:\Qt\2010.05\qt\plugins\sqldrivers\libqsqlmysqld4.a
tmp/obj/debug_shared/main.o: In function `QMYSQLDriverPlugin':
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/main.cpp:58: undefined reference t
o `_imp___ZN16QSqlDriverPluginC2EP7QObject'
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/main.cpp:58: undefined reference t
o `_imp___ZN16QSqlDriverPluginC2EP7QObject'
tmp/obj/debug_shared/main.o:C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/main.c
pp:64: undefined reference to `_imp___ZNK7QStringeqERK13QLatin1String'
tmp/obj/debug_shared/main.o:C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/main.c
pp:64: undefined reference to `_imp___ZNK7QStringeqERK13QLatin1String'
tmp/obj/debug_shared/main.o: In function `QString':
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/../../../../include/QtCore/../../s
rc/corelib/tools/qstring.h:696: undefined reference to `_imp___ZN7QString17fromL
atin1_helperEPKci'
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/../../../../include/QtCore/../../s
rc/corelib/tools/qstring.h:728: undefined reference to `_imp___Z9qt_assertPKcS0_
i'
tmp/obj/debug_shared/main.o: In function `~QString':
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/../../../../include/QtCore/../../s
rc/corelib/tools/qstring.h:882: undefined reference to `_imp___ZN7QString4freeEP
NS_4DataE'
tmp/obj/debug_shared/main.o: In function `QList':
C:\Qt\2010.05\qt\src\plugins\sqldrivers\mysql/../../../../include/QtCore/../../s
rc/corelib/tools/qlist.h:117: undefined reference to `_imp___ZN9QListData11share
d_nullE'

...

Den vollen Text habe ich nicht kopiert, da die Fehler am Ende nur Folgefehler sind. Das Problem tritt in der main.cpp auf.

Die Pfade stimmen - habe ich jetzt schon so oft geprüft.

Was kann ich hier machen, dass ich diese Bibliothek auch unter QT 4.7 erstellen kann.

Danke acdc
acdc
Beiträge: 82
Registriert: 23. Oktober 2007 18:56

Beitrag von acdc »

Hat jemand eine Idee?

Ich habe nun das Qt-Paket (qt-sdk-win-opensource-2010.05.exe) neu installiert. hat aber keine Verbesserung bewirkt.

acdc
acdc
Beiträge: 82
Registriert: 23. Oktober 2007 18:56

Beitrag von acdc »

Liegt scheinbar an zugriffsrechten, ich habe es auf einem Win7 probiert, wo keine UAC aktiviert war, hier funktionierts.

...
acdc
Antworten