DEMO:Test ;工程与dll皆为qmake编译;
所需文件:A.dll、A.lib、A.h、A_global.h;B.dll。其中A.dll 依赖 B.dll
1. 环境配置
(1)确认制作dll的Qt版本和当前工程版本是否一致(Qt6中的一些函数Qt5不支持)
t
2. 配置项目
(1) .dll和 .lib 以及头文件位置
Demo中有两个dll文件,其中的一个依赖另一个,所以需要在合适目录下放置两个dll文件。
.dll文件和与之关联的.lib文件以及头文件放置在项目的合适位置。
<1>A.lib 放在.pro所在目录或子目录(如新建一个lib文件夹,对应的需要修改.pro配置,以便编译时能找到);
<2> A.dll以及其依赖的B.dll 放在本地工程 构建目录中。
<3> 头文件放在.pro 目录层级 或 其子目录里面(同理需要在.pro中配置)。
(2) 配置.pro文件
打开Qt项目的.pro文件;
指定库的路径,添加以下行:
LIBS += -L/$$PWD/lib -lA (注意没有.lib后缀)
---$$PWD 是.pro所在目录
---lib是.lib 所在文件夹
----IA 是 小写L+ lib名
指定头文件的路径:
INCLUDEPATH += /$$PWD/include
---include是与Dll配套的头文件(A.h + A_global.h)所在目录
3. 在代码中使用DLL
一般A.h 中会有导出类或者 C 风格接口,这个就不举例了。