欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Qt5.13 编译QFtp类使用方法

程序员文章站 2022-06-17 19:00:53
由于QT5不再导出QFtp,提供的QNetworkAccessManager仅支持ftp的上传put和下载get。开发需求中会用到mkdir、cd、list等指令,所以重新编译QFtp源码,生成lib及dll文件,在项目中使用。为了能使用QFtp类库走了很多弯路,写下自己最后操作成功的过程,希望能帮到有需要的人,尽量别走弯路了。我在编译QFtp源码过程中主要遇到的问题是,不能一次获取到lib文件和dll文件,只能分两次编译,分别获取lib和dll库。一、先下载qtftp源码①去Qt官方网站下...

由于QT5不再导出QFtp,提供的QNetworkAccessManager仅支持ftp的上传put和下载get。开发需求中会用到mkdir、cd、list等指令,所以重新编译QFtp源码,生成lib及dll文件,在项目中使用。

我的项目需求是使用QFtp上传保存的日志到服务器,因需要创建目录,获取列表等操作,因此学习了一下该方面内容。

我在编译QFtp源码过程中主要遇到的问题是,不能一次获取到lib文件和dll文件,只能分两次编译,分别获取lib和dll库。

如果你也遇到类似的问题,该文章可以参考

一、先下载qtftp源码

①去Qt官方网站下载qtftp源码
②到GitHub下载  https://github.com/qt/qtftp
 

二、编译qtftp源码

1.打开下载好的源码

找到对应qftp.pro文件打开;

2.修改qftp,解决报错问题

Qt5.13  编译QFtp类使用方法

上图标识处改成->#include <qurlinfo.h>
然后构建项目,生成了QFtp相关lib库

Qt5.13  编译QFtp类使用方法

 

先把这个文件夹修改为1-lib,表示存储lib文件。如果不改文件夹名称,再次构建时lib文件会被替换

  1. 修改CONFIG,获取dll文件

Qt5.13  编译QFtp类使用方法

 

把上图标识处改成
CONFIG -= static
CONFIG += shared

然后直接构建项目,生成了QFtp相关dll库

Qt5.13  编译QFtp类使用方法

 

为了便于后文的叙述,此处把文件夹名字改成2-dll

至此我们生成了QFtp的lib和dll库,可以将该库文件导入到工程中

Qt5.13  编译QFtp类使用方法

 

三、拷贝文件

1.lib文件

打开文件夹1-lib的lib文件夹,复制以下四个文件

Qt5.13  编译QFtp类使用方法

 

Qt安装路径,存放lib文件lib路径下,本机地址如下:

 

Qt5.13  编译QFtp类使用方法

2.dll文件

打开文件夹2-dll的bin文件夹,复制两个dll文件

Qt5.13  编译QFtp类使用方法

 

Qt安装路径,存放dll文件bin路径下,本机地址如下:

 

Qt5.13  编译QFtp类使用方法

 

3.h文件

打开qtftp源码文件夹,复制两个.h文件

Qt5.13  编译QFtp类使用方法

 

Qt安装路径,存放网络相关头文件路径include,本机地址如下:

Qt5.13  编译QFtp类使用方法

 

4.QFtp

新建一个命名为“QFtp”的文件,用文本编辑器写入#include “qftp.h”,如下图,放置的路径如上图

Qt5.13  编译QFtp类使用方法

四、引用

1.Qt Creator

在.pro文件中加入以下内容

QT  += network                     #网络相关

#添加QFtp的库文件

#QFtp日志上传--release/debug两个版本
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/qftp/ -lQt5Ftp
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/qftp/ -lQt5Ftpd

INCLUDEPATH += $$PWD/qftp
DEPENDPATH += $$PWD/qftp              #对应自己的目录即可

 

五、总结

经过上述步骤后,Qt5.13可以使用QFtp类。

本文地址:https://blog.csdn.net/weixin_43845670/article/details/108550407

相关标签: Qt qt5