|
这个教程主要是讲怎么使用动态库(.dll)文件,并且顺便讲一下pro文件的编写文件配置。
首先使用库文件那么我们得有库文件,那么我们可以自己先编写一个简单测试的库文件,库文件的编写可以看:??Qt创建并使用共享库(.dll .so)? 这篇文章。
1.获取动态库文件:
1).通过上面篇文章我们可以得到几个文件:
debug目录下会生成 SharedLibd.dll 和 SharedLibd.lib 文件,注意文件末尾有 d.

release目录下会生成 SharedLib.dll 和 SharedLib.lib 文件,注意文件末尾不带 d.

2.新建一个桌面Qt应用项目:
1).新建gui程序:

?2).新建名称为 :?SharedLibWidgetTest:

3).我们选择Widget:

?4).我们得到的目录结构如下:
?
5).开始使用动态库文件:
先在程序目录下新建一个 3rdparty 文件夹

3rdparty 文件夹里的目录结构如下:
3rdparty/?
- SharedLib/?
- include/?
- sharedlib_global.h
- sharedlib.h
- lib/?
- SharedLibd.lib
- SharedLib.lib
?可以看到上面的目录结构里有?sharedlib_global.h ,?sharedlib.h ,?SharedLibd.lib ,?SharedLib.lib 文件,这些文件就是我们事先准备好的库文件和库的头文件。
但是有没有发现 debug 和 release 生成的 SharedLibd.dll ,?SharedLib.dll 文件没有用到?
我们需要把这两个文件拷贝到 "构建目录" 里:

?SharedLibd.dll文件放到debug文件夹里(release就放在release的构建目录下的release文件夹里):
 
然后右键项目 "添加库"

?选择"外部库"?

选择lib文件:

pro文件会自动生成:

6).我们在 widget.h 里添加库的头文件:
并且声明一个库文件的 m_lib 全局变量

?设计下widget的ui界面:

?调用库的add函数:

?运行程序就可调用库函数,进行计算了

3.修改Pro文件,管理自动生成的文件路径,以及exe生成位置:
修改Pro文件,方便管理Pro文件里生成的其他文件的路径,以及修改exe生成的路径.
1).增加pri文件,管理生成的其他文件时自动生成的文件路径:
现在我们程序目录下生成文件夹 main123
?
??文件放在目录下后,我们修改Pro文件,加载main123文件夹到项目里:

?pro文件里增加上面的代码后,左侧目录就会自动把main123文件夹加载进来:

?但是我们想让下面的widget.h,widget.cpp,widget.ui,main.cpp文件也放到main123文件夹里:
我们先到程序目录下,把文件放到main123里

?移动完毕后我们修改pri文件如下:

?然后回到Pro文件里把如下代码删掉:

?保存文件,左侧目录结构就变成如下结构了:

?整理下Pro文件:

?注意的地方:
① 这里的 { 不能换行,换行后会提示?
?
?② 这里就是指定exe程序生成的位置了
程序代码: https://pan.baidu.com/s/1R5stz9cEhTXuHoNNqzXBFg?pwd=arrv 提取码: arrv
|