Alles rund um die Programmierung mit Qt
Spielgrips
Beiträge: 51 Registriert: 8. März 2006 23:09
Kontaktdaten:
Beitrag
von Spielgrips » 25. März 2006 14:12
Hallo und zwar habe ich ein Problem mit dem SQLDriver kompilieren und benutze diesen Code:
Code: Alles auswählen
cd %QTDIR%\src\plugins\sqldrivers\mysql
qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=C:\MYSQL\LIB\OPT\LIBMYSQL.LIB" mysql.pro
nmake
Ich habe MySQL5 auf mein Server laufen und habe den include und lib ordner aus dem mysql ordner von mein server auf mein Rechner kopiert und dann diesen Code ausgeführt..
Resultat:
C:\>mysql_make.bat
C:\>cd C:\Qt\4.1.1\src\plugins\sqldrivers\mysql
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>qmake -o Makefile "INCLUDEPATH+=C:\MYSQ
L\INCLUDE" "LIBS+=C:\MYSQL\LIB\OPT\LIBMYSQL.LIB" mysql.pro
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>nmake
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
NMAKE -f Makefile.Release
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-ena
ble-runtime-pseudo-reloc -Wl,-s -Wl,-s -shared -Wl,--out-implib,C:\Qt\4.1.1\plug
ins\sqldrivers\libqsqlmysql.a -o "..\..\..\..\plugins\sqldrivers\qsqlmysql.dll"
tmp\obj\release_shared\main.o tmp\obj\release_shared\qsql_mysql.o -L"C:\Qt\4.1
.1\lib" -L"C:\Qt\4.1.1\lib" C:\MYSQL\LIB\OPT\LIBMYSQL.LIB -llibmysql -lQtSql4 -l
QtCore4
C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot f
ind -llibmysql
collect2: ld returned 1 exit status
NMAKE : fatal error U1077: 'g++' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio\VC98\bin\NMAKE
.EXE"' : return code '0x2'
Stop.
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>
Kann einer mir helfen?
Zuletzt geändert von
Spielgrips am 25. März 2006 16:18, insgesamt 1-mal geändert.
Spielgrips
Beiträge: 51 Registriert: 8. März 2006 23:09
Kontaktdaten:
Beitrag
von Spielgrips » 25. März 2006 15:13
Wenn ich aber das so angebe:
cd %QTDIR%\src\plugins\sqldrivers\mysql
qmake -o Makefile "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MySQL\lib\opt\libmysql.lib" mysql.pro
nmake
kommt dann so ein Fehler heraus:
Code: Alles auswählen
C:\>mysql_make.bat
C:\>cd C:\Qt\4.1.1\src\plugins\sqldrivers\mysql
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>qmake -o Makefile "INCLUDEPATH+=C:\MySQ
L\include" "LIBS+=C:\MySQL\lib\opt\libmysql.lib" mysql.pro
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>nmake
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
NMAKE -f Makefile.Release
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-ena
ble-runtime-pseudo-reloc -Wl,-s -Wl,-s -shared -Wl,--out-implib,C:\Qt\4.1.1\plug
ins\sqldrivers\libqsqlmysql.a -o "..\..\..\..\plugins\sqldrivers\qsqlmysql.dll"
tmp\obj\release_shared\main.o tmp\obj\release_shared\qsql_mysql.o -L"C:\Qt\4.1
.1\lib" -L"C:\Qt\4.1.1\lib" C:\MySQL\lib\opt\libmysql.lib -lQtSql4 -lQtCore4
Creating library file: C:\Qt\4.1.1\plugins\sqldrivers\libqsqlmysql.a
tmp\obj\release_shared\qsql_mysql.o(.text+0x4c):qsql_mysql.cpp: undefined refere
nce to `mysql_character_set_name@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x184):qsql_mysql.cpp: undefined refer
ence to `mysql_error@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x19a):qsql_mysql.cpp: undefined refer
ence to `mysql_errno@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6c7):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_error@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6db):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_errno@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xa15):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_data_seek@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0xa29):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_fetch@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xb00):qsql_mysql.cpp: undefined refer
ence to `mysql_data_seek@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0xb17):qsql_mysql.cpp: undefined refer
ence to `mysql_fetch_row@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xc6f):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_fetch@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xcb7):qsql_mysql.cpp: undefined refer
ence to `mysql_fetch_row@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xd1f):qsql_mysql.cpp: undefined refer
ence to `mysql_num_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0xd5a):qsql_mysql.cpp: undefined refer
ence to `mysql_stmt_num_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x15ed):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_lengths@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x175c):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_num_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x1777):qsql_mysql.cpp: undefined refe
rence to `mysql_num_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x17be):qsql_mysql.cpp: undefined refe
rence to `mysql_insert_id@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x17fd):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_insert_id@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x18de):qsql_mysql.cpp: undefined refe
rence to `mysql_errno@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x18f6):qsql_mysql.cpp: undefined refe
rence to `mysql_field_seek@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x1904):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_field@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x1974):qsql_mysql.cpp: undefined refe
rence to `mysql_field_seek@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2149):qsql_mysql.cpp: undefined refe
rence to `mysql_close@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2adc):qsql_mysql.cpp: undefined refe
rence to `mysql_list_fields@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2b25):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_field@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2b8c):qsql_mysql.cpp: undefined refe
rence to `mysql_free_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2d04):qsql_mysql.cpp: undefined refe
rence to `mysql_query@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x2ec4):qsql_mysql.cpp: undefined refe
rence to `mysql_query@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x3084):qsql_mysql.cpp: undefined refe
rence to `mysql_query@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x36f1):qsql_mysql.cpp: undefined refe
rence to `mysql_escape_string@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4273):qsql_mysql.cpp: undefined refe
rence to `mysql_init@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x436e):qsql_mysql.cpp: undefined refe
rence to `mysql_real_connect@32'
tmp\obj\release_shared\qsql_mysql.o(.text+0x441d):qsql_mysql.cpp: undefined refe
rence to `mysql_select_db@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x449d):qsql_mysql.cpp: undefined refe
rence to `mysql_get_client_version@0'
tmp\obj\release_shared\qsql_mysql.o(.text+0x44b7):qsql_mysql.cpp: undefined refe
rence to `mysql_get_server_version@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4642):qsql_mysql.cpp: undefined refe
rence to `mysql_close@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4e70):qsql_mysql.cpp: undefined refe
rence to `mysql_list_tables@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4ea3):qsql_mysql.cpp: undefined refe
rence to `mysql_data_seek@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4eb1):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_row@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4f33):qsql_mysql.cpp: undefined refe
rence to `mysql_free_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4f6f):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_result_metadata@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x4f8a):qsql_mysql.cpp: undefined refe
rence to `mysql_num_fields@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5074):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_field@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5454):qsql_mysql.cpp: undefined refe
rence to `mysql_free_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5477):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_close@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x54af):qsql_mysql.cpp: undefined refe
rence to `mysql_free_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5749):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_prepare@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x584f):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_init@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5909):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_param_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x592a):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_param_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5b67):qsql_mysql.cpp: undefined refe
rence to `mysql_real_query@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5cea):qsql_mysql.cpp: undefined refe
rence to `mysql_store_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5d10):qsql_mysql.cpp: undefined refe
rence to `mysql_field_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5d35):qsql_mysql.cpp: undefined refe
rence to `mysql_field_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5d93):qsql_mysql.cpp: undefined refe
rence to `mysql_affected_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x5dfd):qsql_mysql.cpp: undefined refe
rence to `mysql_fetch_field_direct@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6424):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_reset@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6815):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_param_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6830):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_param_count@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6860):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_execute@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x696c):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_affected_rows@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x69b4):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_bind_result@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x69f7):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_attr_set@12'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6a19):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_store_result@4'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6a64):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_bind_result@8'
tmp\obj\release_shared\qsql_mysql.o(.text+0x6f08):qsql_mysql.cpp: undefined refe
rence to `mysql_stmt_bind_param@8'
collect2: ld returned 1 exit status
NMAKE : fatal error U1077: 'g++' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio\VC98\bin\NMAKE
.EXE"' : return code '0x2'
Stop.
C:\Qt\4.1.1\src\plugins\sqldrivers\mysql>
patrik08
Beiträge: 746 Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg
Beitrag
von patrik08 » 25. März 2006 15:39
Ich weiss das man die mysql libs vor dem kompilieren noch rebuilden muss um die *def zu bekommen ... google rebuild +def +qt4 +ranlib wegen den kompiler..... hatte das selbe problem gehabt .... habe dann sqlite3 und odbc getestet und bleibe nun auf sqlite3 da ... sehr schnell ist... exportieren kann man dann immer ....
ciao...
patrik08
Beiträge: 746 Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg
Beitrag
von patrik08 » 27. März 2006 13:54
Ich habe es in 5 minuten so gemacht:
donwload der cpp-dev libmysql unter...
http://devpaks.org/details.php?devpak=105
den libmysql-5.0.5-1sid.DevPak umbenant auf ...
libmysql-5.0.5-1sid.bz2 entpackt wie ein normales zip
naturlich path anpassen vom download!!
Code: Alles auswählen
cd %QTDIR%\src\plugins\sqldrivers\mysql
make distclean //// um den alten zu eliminieren!!!
qmake -o Makefile "INCLUDEPATH+=C:\classe2\libmysql-5.0.5-1sid\include" "LIBS+=C:\classe2\libmysql-5.0.5-1sid\lib\libmysql.a" mysql.pro
make
naturlich mit dem Mingw compiler da alle libs auf
http://devpaks.org/ fuer diesen compiler sind....
so dann ist mysql lib version 5 drinnen....