一、环境介绍
操作系统: win10 64位
QT版本: QT5.12.6
编译器: MinGW 32位
二、创建动态库
2.1 创建库的方式1
QtCreate创建工程的向导里有创建库的工程选项,按照向导创建工程之后,写好代码,点击QtCreate左下角的 “小锤锤”,构建完成,就可以在构建的目录下生成库文件。
2.2 创建库的方式2
一般情况下,工程可能之前已经创建好了,并且功能都已经完,现在想生成库文件给被别人调用。 这时,只需要修改xxx.pro工程文件即可。
在原来的工程文件里加上下面两行代码。
代码语言:javascript复制TEMPLATE = lib
DEFINES = DLL_CREATETEST_LIBRARY
修改之后,构建工程即可。
在VS QT开发生产动态库,可以直接在VS的工程属性里配置:
三、调用动态库
3.1 创建一个新的工程,调用dll库
3.2 拷贝库文件和头文件
(1). 将生成库的时(原工程)用到的头文件全部拷贝到新工程(调用库的测试工程)的目录下。
(2). 将原工程生成的dll动态库拷贝到新工程(调用库的测试工程)的目录下。
(3) 修改xxx.pro工程文件
加上代码:
代码语言:javascript复制LIBS = $$PWD/DrawTimeLine.dll
(4). 修改主函数代码,调用测试函数
代码语言:javascript复制#include <QApplication>
#include "widget.h"
#include "drawtimeline.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
return a.exec();
}
3.3 完成调用测试
构建完成之后,还需要将用到的动态库文件,拷贝一份到刚才构建的目录下。不然运行时找不到库文件。