Ubuntu编译QFtp并使用

下载QFtp源码

QFtp源码
gti clone https://github.com/qt/qtftp.git

编译QFtp模块

在QtCreator上编译出了点问题,只能在终端进行编译

  • 进入源码目录cd src/qftp,修改pro文件qftp.pro,修改如下
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    load(qt_build_config)

    TARGET = QtFtp
    CONFIG += static
    CONFIG -= shared
    QT = core network

    MODULE_PRI = ../../modules/qt_ftp.pri
    MODULE = ftp

    load(qt_module)

    # Input
    HEADERS += qftp.h qurlinfo.h
    SOURCES += qftp.cpp qurlinfo.cpp

    修改qurlinfo.cpp中的qurlinfo.h路径,修改如下
    1
    2
    3
    4
    5
    6
    7
    #include "qurlinfo.h"

    #include "qurl.h"
    #include "qdir.h"
    #include <limits.h>

    QT_BEGIN_NAMESPACE
  • 在终端中进入源码目录cd src/qftp,运行qmake,之后会生成Makefile
  • make生成libQt5Ftp.a静态库,pri模块文件
  • make install将生成的库文件及QFtp头文件复制到Qt安装目录
  • 对于交叉编译环境下其他平台的编译也可按照上面的步骤,qmake需要替换交叉编译环境下对应的qmake

QFtp使用

  • 官方源码目录example文件夹下有一个例程,网上有大佬稍加修改上传到了GitHub,QFtp例程
  • 下载这个例程,上述编译步骤没问题的话,直接编译运行即可