Hallo,
ich wollte QT configurieren: configure -qt-sql-mysql -I C:\mysql\include -L C:\mysql\lib\opt -l mysqlclient -qt-sql-sqlite -release
und erhalte fogende Fehlermeldung:
g++: global\qt_pch.h: linker input file unused because linking not done
g++ -c -include tmp\obj\release_shared\qt_pch.h -O2 -O2 -Wall -frtti -fexception
s -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_EDITION=
QT_EDITION_DESKTOP -DQT_BUILD_CORE_LIB -DQT_MAKEDLL -DQT3_SUPPORT -DQT_MOC_COMPA
T -DQT_DLL -DQT_NO_DEBUG -I"C:/QT/include" -I"C:/mysql/include" -I"C:/QT/include
/QtCore" -I"tmp" -I"C:/QT/src/corelib/global" -I"..\3rdparty\zlib" -I"C:/QT/incl
ude/ActiveQt" -I"tmp\moc\release_shared" -I"." -I"C:/QT/mkspecs/win32-g++" -o tm
p\obj\release_shared\qglobal.o global\qglobal.cpp
global/qglobal.cpp: tmp\obj\release_shared\qt_pch.h: No such file or directory
mingw32-make[3]: *** [tmp\obj\release_shared\qglobal.o] Error 1
mingw32-make[3]: Leaving directory `C:/QT/src/corelib'
mingw32-make[2]: *** [release] Error 2
mingw32-make[2]: Leaving directory `C:/QT/src/corelib'
mingw32-make[1]: *** [sub-corelib-make_default-ordered] Error 2
mingw32-make[1]: Leaving directory `C:/QT/src'
mingw32-make: *** [sub-src-make_default-ordered] Error 2
Wie kann ich den Fehler beheben?
Gruß
Marco812
MinGW und MySql
MinGW und MySql
Zuletzt geändert von Marco812 am 3. April 2006 18:48, insgesamt 1-mal geändert.
suche ming +mysql im forum ... oder...
http://qtforum.de/forum/viewtopic.php?t=1655
http://qtforum.de/forum/viewtopic.php?t=1655
Hallo,
so habe ich jetzt die qsqlmysql.dll erstellt:
cd c:\mysql\lib\opt
reimp -d libmysql.lib
dlltool --input-def ibmysql.def --dllname libmysql.dll --output-lib libmysql.a
cd c:\qt\src\plugins\sqldrivers\mysql
qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=-LC:\MYSQL\LIB\OPT -lmysql" mysql.pro
mingw32-make
und so wollte ich QT konfigurieren:
cd c:\qt
configure -qt-sql-mysql -I c:\mysql\include -L c:\mysql\lib\opt -l mysqlclient -qt-sql-sqlite –release –fast
mingw32-make
Leider bricht er mit folgendem Fehler ab:
C:\mysql\lib\opt\mysqlclient.lib(./release/ctype-ucs2.obj)(.text[_my_strtoll10_u
cs2]+0x268):\build\mysql-5.0.1: undefined reference to `_allmul'
fu000001.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000004.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000006.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000008.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000010.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000012.o(.idata$3+0xc): more undefined references to `libmsvcrt_a_iname' follo
w
nmth000000.o(.idata$4+0x0): undefined reference to `_nm___iob'
collect2: ld returned 1 exit status
mingw32-make[6]: *** [..\..\lib\QtSql4.dll] Error 1
mingw32-make[6]: Leaving directory `C:/QT/src/sql'
mingw32-make[5]: *** [release] Error 2
mingw32-make[5]: Leaving directory `C:/QT/src/sql'
mingw32-make[4]: *** [all] Error 2
mingw32-make[4]: Leaving directory `C:/QT/src/sql'
mingw32-make[3]: *** [sub-sql-make_default-ordered] Error 2
mingw32-make[3]: Leaving directory `C:/QT/src'
mingw32-make[2]: *** [all] Error 2
mingw32-make[2]: Leaving directory `C:/QT/src'
mingw32-make[1]: *** [sub-src-make_default-ordered] Error 2
mingw32-make[1]: Leaving directory `C:/QT'
mingw32-make: *** [all] Error 2
Kann mir jemand sagen wie ich den Fehler beheben kann?
Gruß
Marco812
so habe ich jetzt die qsqlmysql.dll erstellt:
cd c:\mysql\lib\opt
reimp -d libmysql.lib
dlltool --input-def ibmysql.def --dllname libmysql.dll --output-lib libmysql.a
cd c:\qt\src\plugins\sqldrivers\mysql
qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=-LC:\MYSQL\LIB\OPT -lmysql" mysql.pro
mingw32-make
und so wollte ich QT konfigurieren:
cd c:\qt
configure -qt-sql-mysql -I c:\mysql\include -L c:\mysql\lib\opt -l mysqlclient -qt-sql-sqlite –release –fast
mingw32-make
Leider bricht er mit folgendem Fehler ab:
C:\mysql\lib\opt\mysqlclient.lib(./release/ctype-ucs2.obj)(.text[_my_strtoll10_u
cs2]+0x268):\build\mysql-5.0.1: undefined reference to `_allmul'
fu000001.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000004.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000006.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000008.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000010.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
fu000012.o(.idata$3+0xc): more undefined references to `libmsvcrt_a_iname' follo
w
nmth000000.o(.idata$4+0x0): undefined reference to `_nm___iob'
collect2: ld returned 1 exit status
mingw32-make[6]: *** [..\..\lib\QtSql4.dll] Error 1
mingw32-make[6]: Leaving directory `C:/QT/src/sql'
mingw32-make[5]: *** [release] Error 2
mingw32-make[5]: Leaving directory `C:/QT/src/sql'
mingw32-make[4]: *** [all] Error 2
mingw32-make[4]: Leaving directory `C:/QT/src/sql'
mingw32-make[3]: *** [sub-sql-make_default-ordered] Error 2
mingw32-make[3]: Leaving directory `C:/QT/src'
mingw32-make[2]: *** [all] Error 2
mingw32-make[2]: Leaving directory `C:/QT/src'
mingw32-make[1]: *** [sub-src-make_default-ordered] Error 2
mingw32-make[1]: Leaving directory `C:/QT'
mingw32-make: *** [all] Error 2
Kann mir jemand sagen wie ich den Fehler beheben kann?
Gruß
Marco812
Hallo,
ich konnte den MySql-Treiber jetzt so erstellen:
cd c:\mysql\lib\opt
reimp -d libmysql.lib
dlltool -k --input-def libmysql.def --dllname libmysql.dll --output-lib libmysql.a
cd %QTDIR%\src\plugins\sqldrivers\mysql\
qmake -o Makefile "INCLUDEPATH+=C:\mysql\include" "LIBS+=-LC:\mysql\lib\opt -lmysql"
mingw32-make
configure -I C:\mysql\include -L C:\mysql\lib\opt -l mysql -qt-sql-mysql -qt-sql-sqlite -release -fast
Warum muss ich jetzt aber die "libmysql.dll" im Programmverzeichnis haben und nicht im Ordner "sqldrivers" wie z.B. die "qsqlite.dll"? Wie kann ich QT dazu bewegen den MySql-Treiber im Ordner "sqldrivers" zu erkennen?
Gruß
Marco812
ich konnte den MySql-Treiber jetzt so erstellen:
cd c:\mysql\lib\opt
reimp -d libmysql.lib
dlltool -k --input-def libmysql.def --dllname libmysql.dll --output-lib libmysql.a
cd %QTDIR%\src\plugins\sqldrivers\mysql\
qmake -o Makefile "INCLUDEPATH+=C:\mysql\include" "LIBS+=-LC:\mysql\lib\opt -lmysql"
mingw32-make
configure -I C:\mysql\include -L C:\mysql\lib\opt -l mysql -qt-sql-mysql -qt-sql-sqlite -release -fast
Warum muss ich jetzt aber die "libmysql.dll" im Programmverzeichnis haben und nicht im Ordner "sqldrivers" wie z.B. die "qsqlite.dll"? Wie kann ich QT dazu bewegen den MySql-Treiber im Ordner "sqldrivers" zu erkennen?
Gruß
Marco812
die dll kanst du in jedem ordner hinein deponieren ...
aber man muss es an dienen programm mitteilen ....
habe eben das gleiche problem ein beisbiel gegeben ...
lade einfach => http://www.qtforum.de/forum/viewtopic.php?t=1732 <=
ciao...
aber man muss es an dienen programm mitteilen ....
habe eben das gleiche problem ein beisbiel gegeben ...
lade einfach => http://www.qtforum.de/forum/viewtopic.php?t=1732 <=
ciao...