Qt5调用QFtp函数
不知怎么,在Qt5以上版本没有了QFtp,不过可以用QNetworkAccessManager.我在网上也找了些资料,最后还是决定先暂时用QFtp…
这篇博客讲解的很详细
http://blog.csdn.net/liang19890820/article/details/53304049
下载QFtp源码
git clone https://github.com/qt/qtftp.git
修改配置
-
进入qtftp/src/qftp,有个
,修改为
CONFIG += static #生成 .a静态链接库
CONFIG += shared #生成.so动态链接库
编译
进入qtftp根目录,编译生成库文件
cd qtftp
qmake
make
然后在 qtftp/lib 下生成了一些目录文件,大概是这样
cmake/ libQt5Ftp.la libQt5Ftp.so libQt5Ftp.so.5.0 pkgconfig/
libQt5Ftp.a libQt5Ftp.prl libQt5Ftp.so.5 libQt5Ftp.so.5.0.0
整合文件
把这些零散的文件整合成一个便于调用的库,还是非常有必要的
这里我创建一个 libqtftp 文件夹,用来存放所需要的文件
然后在刚才在 qtftp 目录下的 lib
, include
, src
文件夹复制到 libqtftp 目录
- 进入 include/QtFtp 文件夹,删除 headers.pri,同时把 src 文件夹内:
qftp.cpp
qftp.h
qurlinfo.cpp
qurlinfo.h
.moc文件夹内3个文件复制到上一层文件夹 (隐藏文件夹)
.obj + .pch (隐藏文件夹)
一并复制到 include/QtFtp 文件夹,这时可删除 src 文件夹
- 修改 moc_qftp.cpp 代码
#include "../qftp.h"
为#include "qftp.h"
- 为了便于管理,在 libqtftp 目录下创建一个 .pri文件:
qtftp.pri:
1 |
|
引用库
首先,新建一个Qt项目,把 libqtftp 文件夹放到 Qt项目下.
然后在修改 项目.pro 文件
1 |
|
要注意那个配置:
QT += network
include($$PWD/libqtftp/qtftp.pri)
INCLUDEPATH += $$PWD/libqtftp/include/
LIBS += -L$$PWD/libqtftp/lib/ -lQt5Ftp
链接libQt5Ftp.so动态链接库
之后 重新构建项目
例子
使用前需要包含头文件
1 |
|
如:
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!