[Qt-creator] Qt Creator Windows Bundle - How can I install the QMysql driver?
Jordan Thoms
jords at shadowservices.biz
Sun Feb 1 04:03:38 CET 2009
Hi
I'm having major problems trying to get the QMysql driver working with
the MinGW Qt Creator bundle. I've downloaded and installed the
development libraries and headers for Mysql, and used the reimp tool
to make a liblibmysql.a file. To try and make the paths easy i just
put the liblibmysql.a and the include directory from the mysql server
in my C drive and then used the instructions from here:
http://wiki.qtcentre.org/index.php?title=Building_the_QMYSQL_plugin_on_Windows_using_MinGW
which was the only information on this i could find.
When I run make, it gets through the first few files and then:
C:/Qt/QtCreator/qt/bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_
ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -D
QT_THREAD_SUPPORT -I"..\..\..\..\include\QtCore" -I"..\..\..\..\include\QtCore"
-I"..\..\..\..\include\QtSql" -I"..\..\..\..\include\QtSql" -I"..\..\..\..\inclu
de" -I"c:\include" -I"c:\Qt\QtCreator\qt\include\ActiveQt" -I"debug" -I"." -I"..
\..\..\..\mkspecs\win32-g++" -D__GNUC__ -DWIN32 ..\..\..\sql\drivers\mysql\qsql_
mysql.h -o debug\moc_qsql_mysql.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_PLUGIN -DQT_SQL_LIB -
DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"..\..\..\..\include\QtCore" -I"..\..\..\..\i
nclude\QtCore" -I"..\..\..\..\include\QtSql" -I"..\..\..\..\include\QtSql" -I"..
\..\..\..\include" -I"c:\include" -I"c:\Qt\QtCreator\qt\include\ActiveQt" -I"deb
ug" -I"." -I"..\..\..\..\mkspecs\win32-g++" -o debug\moc_qsql_mysql.o debug\moc_
qsql_mysql.cpp
windres -i qsqlmysqld_resource.rc -o debug\qsqlmysqld_resource_res.o --include-d
ir=.
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -mthreads -Wl -shared -Wl,--out-implib,debug\libqsqlmysqld4.a -o debug\qsqlmy
sqld4.dll debug/main.o debug/qsql_mysql.o debug/moc_qsql_mysql.o -L"c:\Qt\QtCre
ator\qt\lib" debug\qsqlmysqld_resource_res.o C:\liblibmysql.a -lQtSqld4 -lQtCore
d4
debug/qsql_mysql.o: In function `Z5codecP8st_mysql':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:211: undefined reference to `mysql_character_set_name at 4'
debug/qsql_mysql.o: In function `Z10qMakeErrorRK7QStringN9QSqlError9ErrorTypeEPK
19QMYSQLDriverPrivate':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:222: undefined reference to `mysql_error at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:223: undefined reference to `mysql_errno at 4'
debug/qsql_mysql.o: In function `Z14qMakeStmtErrorRK7QStringN9QSqlError9ErrorTyp
eEP13st_mysql_stmt':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:294: undefined reference to `mysql_stmt_error at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:295: undefined reference to `mysql_stmt_errno at 4'
debug/qsql_mysql.o: In function `ZN19QMYSQLResultPrivate12bindInValuesEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:333: undefined reference to `mysql_stmt_result_metadata at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:337: undefined reference to `mysql_num_fields at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:344: undefined reference to `mysql_fetch_field at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult7cleanupEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:401: undefined reference to `mysql_free_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:406: undefined reference to `mysql_next_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:407: undefined reference to `mysql_store_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:409: undefined reference to `mysql_free_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:415: undefined reference to `mysql_stmt_close at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:421: undefined reference to `mysql_free_result at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult5fetchEi':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:465: undefined reference to `mysql_stmt_data_seek at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:467: undefined reference to `mysql_stmt_fetch at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:482: undefined reference to `mysql_data_seek at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:483: undefined reference to `mysql_fetch_row at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult9fetchNextEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:496: undefined reference to `mysql_stmt_fetch at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:502: undefined reference to `mysql_fetch_row at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult9fetchLastEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:521: undefined reference to `mysql_stmt_num_rows at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:526: undefined reference to `mysql_num_rows at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult4dataEi':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:567: undefined reference to `mysql_fetch_lengths at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult5resetERK7QString':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:642: undefined reference to `mysql_real_query at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:647: undefined reference to `mysql_store_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:648: undefined reference to `mysql_field_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:653: undefined reference to `mysql_field_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:656: undefined reference to `mysql_affected_rows at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:659: undefined reference to `mysql_fetch_field_direct at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult4sizeEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:672: undefined reference to `mysql_stmt_num_rows at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:677: undefined reference to `mysql_num_rows at 4'
debug/qsql_mysql.o: In function `ZNK12QMYSQLResult12lastInsertIdEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:694: undefined reference to `mysql_stmt_insert_id at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:699: undefined reference to `mysql_insert_id at 4'
debug/qsql_mysql.o: In function `ZNK12QMYSQLResult6recordEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:719: undefined reference to `mysql_errno at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:720: undefined reference to `mysql_field_seek at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:721: undefined reference to `mysql_fetch_field at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:724: undefined reference to `mysql_fetch_field at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:727: undefined reference to `mysql_field_seek at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult10nextResultEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:738: undefined reference to `mysql_free_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:746: undefined reference to `mysql_next_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:755: undefined reference to `mysql_store_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:756: undefined reference to `mysql_field_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:765: undefined reference to `mysql_affected_rows at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:769: undefined reference to `mysql_fetch_field_direct at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult7prepareERK7QString':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:835: undefined reference to `mysql_stmt_init at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:843: undefined reference to `mysql_stmt_prepare at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:851: undefined reference to `mysql_stmt_param_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:852: undefined reference to `mysql_stmt_param_count at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLResult4execEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:874: undefined reference to `mysql_stmt_reset at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:881: undefined reference to `mysql_stmt_param_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:881: undefined reference to `mysql_stmt_param_count at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:961: undefined reference to `mysql_stmt_bind_param at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:969: undefined reference to `mysql_stmt_execute at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:981: undefined reference to `mysql_stmt_affected_rows at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:986: undefined reference to `mysql_stmt_bind_result at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:993: undefined reference to `mysql_stmt_attr_set at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:995: undefined reference to `mysql_stmt_store_result at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1007: undefined reference to `mysql_stmt_bind_result at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLDriver4openERK7QStringS2_S2_S2_iS2_':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1200: undefined reference to `mysql_init at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1200: undefined reference to `mysql_real_connect at 32'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1215: undefined reference to `mysql_select_db at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1218: undefined reference to `mysql_close at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1225: undefined reference to `mysql_close at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1232: undefined reference to `mysql_set_character_set at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1239: undefined reference to `mysql_get_client_version at 0'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1239: undefined reference to `mysql_get_server_version at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLDriver5closeEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1253: undefined reference to `mysql_close at 4'
debug/qsql_mysql.o: In function `ZNK12QMYSQLDriver6tablesEN4QSql9TableTypeE':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1272: undefined reference to `mysql_list_tables at 8'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1276: undefined reference to `mysql_data_seek at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1277: undefined reference to `mysql_fetch_row at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1283: undefined reference to `mysql_free_result at 4'
debug/qsql_mysql.o: In function `ZNK12QMYSQLDriver6recordERK7QString':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1318: undefined reference to `mysql_list_fields at 12'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1323: undefined reference to `mysql_fetch_field at 4'
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1325: undefined reference to `mysql_free_result at 4'
debug/qsql_mysql.o: In function `ZN12QMYSQLDriver16beginTransactionEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1343: undefined reference to `mysql_query at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLDriver17commitTransactionEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1360: undefined reference to `mysql_query at 8'
debug/qsql_mysql.o: In function `ZN12QMYSQLDriver19rollCreating library file: de
bug\libqsqlmysqld4.a
backTransactionEv':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1377: undefined reference to `mysql_query at 8'
debug/qsql_mysql.o: In function `ZNK12QMYSQLDriver11formatValueERK9QSqlFieldb':
C:/Qt/QtCreator/qt/src/plugins/sqldrivers/mysql/../../../sql/drivers/mysql/qsql_
mysql.cpp:1403: undefined reference to `mysql_real_escape_string at 16'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\qsqlmysqld4.dll] Error 1
mingw32-make[1]: Leaving directory `C:/Qt/QtCreator/qt/src/plugins/sqldrivers/my
sql'
mingw32-make: *** [debug] Error 2
C:\Qt\QtCreator\qt\src\plugins\sqldrivers\mysql>
Is there a easier/better way of getting the QMysql driver installed on
windows? Or is there some way to fix this error? I'm using mysql
version 5.1 and the qt install is from the 0.9.1 beta on the website,
I'm actually using the 0.9.2 nightlies but didn't want to download the
whole bundle again.
Thanks
Jordan
More information about the Qt-creator-old
mailing list