您的位置:

包含qt静态编译mysql的词条

本文目录一览:

求Qt5.10 for msvc2015 mysql静态编译版本的驱动

楼主可以通过查看依赖库的软件(比如windows depends)把所有依赖的DLL都打包起来

和你的EXE一起拷贝到别的电脑上就能直接跑 了

qt连接mysql数据库怎么编译驱动

下载mysql C链接库

选择C的链接库

2

将C的连接库解压到到C:/mysql 目录下

3

我的QT 安装在C盘目录下,版本号是4.8.6 所以打开目录

C:\QT\4.8.6\src\plugins\sqldrivers\mysql

4

将C:/mysql/lib/libmysql.dll 和C:/mysql/lib/libmysql.lib

复制到此处。

5

编辑目录下的mysql.pro文件

添加

INCLUDEPATH+="C:/mysql/include"

LIBS+="C:/mysql/lib/opt/libmysql.lib"

运行qt的控制台窗口,方便使用qmake

切换到目录下

C:\QT\4.8.6\src\plugins\sqldrivers\mysql

执行qmake

运行VS2010的控制台工具

切换到

C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目录下

执行nmake 和nmake release

是nmake不是make

这样在C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目录下的debug 目录和release 目录下分别会产生

qsqlmysqld4.dll qsqlmysqld4.lib

qsqlmysql4.dll qsqlmysql4.lib

将上面提到的四个文件复制到

C:\QT\4.8.6\plugins\sqldrivers

最后把

C:\mysql\lib\opt\libmysql.dll

C:\mysql\lib\opt\libmysql.lib

复制到

C:\Windows\system32\ 目录下。

最后测试mysql 可不可以在qt中正常使用

新建一个qt 控制台项目

输入以下代码

#include QCoreApplication

#include QDebug

#include qstring.h

#include qstringlist.h

#include qsql.h

#include qsqldatabase.hint main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

qDebug() "Available drivers:";

QStringList drivers = QSqlDatabase::drivers();qDebug() drivers;return a.exec();

}

运行测试一下,看看有没有图片中红圈圈中的两项内容

QT中怎么静态编译,静态编译的步骤是什么。

Qt采用编译的方式安装的时候,配置中默认的编译方式是动态编译的,但是有时候你编写的程序要发布出去,带很多动态库文件是很繁琐的,此时就需要静态编译你的程序,Qt要实现静态编译必须库文件也是静态编译的,所以在此介绍一下qt如何来进行静态编译第一步:下载源码包Qt/X11版本:qt-x11-opensource-src-4.5.2.tar.gz第二步:解压缩tarzxvfqt-x11-opensource-src-4.5.2.tar.gz第三步:进入到刚才解压缩后的文件夹下并进行配置,如下./configure-release-platformwin32-msvc2008-static-nomakeexamples-nomakedemos-no-qt3support-no-scrip

...

by

fengyetang

2010-07-04

回复

(0)

群内有人用mingw编译的静态编译库成功编译过qt+mysql的程序吗

mingw编译出来的静态库后缀名为.a,编译出来的动态库的导入库后缀名为.dll.a,而在windows下后缀名为.lib的库可能是静态库也可能是动态库的导入库。

mingw编译出来的动态库的导入库可以直接在vc中直接使用,例如

#pragma comment(lib, "libx264.dll.a")

这样你就不需要生成一个.lib后缀的动态库的导入库了,网上也有如何从.dll生成.lib的方法。

如果链接了动态库的导入库libpthread.dll.a,你发布的应用程序就要带上pthread的dll。

使用静态库的好处是发布的应用程序组件模块里不需要带上相关的dll,如果要使用mingw编译出来的静态库,可以如下:

#pragma comment(lib, "libx264.a")

但是仅仅链接这么一个静态库是不够的,你还需要链接

libgcc.a

libmingwex.a

你可能还需要链接libmsvcrt.a

否则会报一堆错误:error LNK2001: 无法解析的外部符号

上面的这些库在C:\MinGW\lib目录或子目录下面可以找到。

链接这些库的原因是mingw使用的gcc编译器和vc编译器之间存在差异

Qt Creator 怎样设置才能实现静态编译

qt默认的编译方式是动态编译的,但是有时候编写的程序要发布出去,带很多动态库文件是很繁琐的,此时就需要静态编译程序,qt要实现静态编译必须库文件也是静态编译的,可以用这个命令编译静态库:

1.将c:\qt\2010.05\qt\mkspecs\win32-g++\qmake.conf文件中的qmake_lflags

=

-enable-stdcall-fixup

-wl,-enable-auto-import

-wl,-enable-runtime-pseudo-reloc

改为

qmake_lflags

=

-static

-enable-stdcall-fixup

-wl,-enable-auto-import

-wl,-enable-runtime-pseudo-reloc

2.在开始菜单里找到qt

command

prompt并运行,输入命令:

configure

-static

-debug-and-release

-no-exceptions

-l

"c:\qt\2010.05\qt\include"

-l

"c:\qt\2010.05\qt\lib"

-l指定一下路径,防止用到vc的头文

QT5静态编译无法加载数据库插件

今天终于自己静态编译过了QT5.3.1, 成功用在项目上了, 记录下configure指令.

configure -confirm-license -opensource -platform win32-msvc2013 -mp -debug-and-release -static -prefix "E:\Qt\5.3.1-static-vs2013" -qt-sql-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit

其中 -mp 是启用多核编译的开关