回复: Qt4 OpenSource for mingw中编译MySQL驱动
#6 [scerzz 04-23 21:50]
我把reimp复制到dev-cpp/bin目录下了,发现那下面才是命令存放的目录
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runt
ime-pseudo-reloc -Wl,-s -Wl,-s -shared -Wl,--out-implib,d:\Qt\4.1.1\plugins\sqld
rivers\libqsqlmysql.a -o "d:\Qt\4.1.1\plugins\sqldrivers\qsqlmysql.dll" tmp\obj\
release_shared\main.o tmp\obj\release_shared\qsql_mysql.o-L"d:\Qt\4.1.1\lib" -
L"d:\Qt\4.1.1\lib" C:\MYSQL\LIB\OPT\libmysql.a -lQtSql4 -lQtCore4
编译的最后一步
可以对比一下
这样编译过后就可以象下面这样连接么
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("abc");
db.setUserName("root");
db.setPassword("");//我默认是没有密码的
db.open();
但db.open()为假啊,没有成功,是否需要在工程里边更改什么东西呢?
#7 [XChinux 04-24 09:16]
这么说你编译成功了。
在.pro里加上QT += sql
#8 [scerzz 04-24 10:49]
我编译成功了,QT +=sql 添加了的
而且在qt\plugins\sqldrivers 下已经有了
libqsqlmysql.a
qsqlmysql.dll
但我用
QSqlDatabase::drivers().contains("QMYSQL")
返回为假
我检查
QSqlDatabase::drivers().contains("QSQLITE")
是正常的,难道直接放在下面还有什么操作才能用么?
我的mysql版本为4.1.X的
#9 [libggbil 04-25 09:04]
在第一次编译出来之后可以用,但是第二天再在没有编译的情况下打开那个程序已经不行了,不知道是什么原因?
#10 [wazfb 04-28 10:46]
我怎么没编译成功啊,帮我看看错误在那里?
qt是4.1.2,安装目录c:\qt\4.1.2
在Make的时候最后报出的错误如下:
mingw32-make[1]: Entering directory `C:/qt/4.1.2/src/plugins/sqldrivers/mysql'
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-s -shared -Wl,--out-implib,C:\Qt\4.1.2\plugins\sqldrivers\libqsqlmysql.a -o "C:\Qt\4.1.2\pl
ugins\sqldrivers\qsqlmysql.dll" tmp\obj\release_shared\main.o tmp\obj\release_shared\qsql_mysql.o-
L"C:\Qt\4.1.2\lib" -L"C:\Qt\4.1.2\lib" c:\mysql\lib\opt\libmysql.a mysql.pro -lQtSql4 -lQtCore4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe:mysql.pro: file format not recognized; treating as linker script
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe:mysql.pro:1: syntax error
collect2: ld returned 1 exit status
mingw32-make[1]: *** Error 1
mingw32-make[1]: Leaving directory `C:/qt/4.1.2/src/plugins/sqldrivers/mysql'
mingw32-make: *** Error 2