IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Qt使用动态库编写Pro文件整理目录结构 -> 正文阅读

[开发工具]Qt使用动态库编写Pro文件整理目录结构

这个教程主要是讲怎么使用动态库(.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

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-04-15 00:19:38  更:2022-04-15 00:21:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:29:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码