QT5中如何使用QFtp类(这个类虽然没有被收录,但一直在更新)

由于QT5对QML的支持有很大的改进,所以打算将原来基于QT4的程序移植到QT5上,在移植用QFtp类写的程序时傻眼了!

Qt5 移除了 QFtp API,原因是其实现质量。QNetworkAccessManager 可以用来提供 ftp url 的上传下载操作。

由于原来的程序已经跑的很稳定了不想做修改,然后就去想其它办法,结果发现官方说这些 API 将由某一易于迁移的独立形式提供。

鄙人就去git看了看,结果发现这个源码一直在更新,已经更新到支持Qt5了,所以我就下载了一份源码,然后编译了一个支持QT5的QFtp。

废话不多说了,直接说我怎么做的:

1.去git下载代码

http://qt.gitorious.org/qt/qtftp

我下载的时候最后更新时间是2013-06-11

 

然后点击红色区域的那个连接

 

 

在新窗口中点击

 

 

下载源码

 

2. 编译

 

如图用QTCreator打开项目

然后编译编译最后会有几个类似警告的东西,直接点击忽略

 

3.完成后会在构建目录\lib\目录下面生成两个编译好的静态库

 

4.编译动态库

 

进入\master\qt-qtftp\src\qftp目录

 

修改qftp.pro文件

 

将原来的两句CONFIG修改为:

 

       CONFIG -= static

       CONFIG += shared

 

然后编译编译完成后同样会在构建目录\lib\目录下生给予成我们需要的动态库文件

 

5.部署编译好的库

 

5.1将动态库(.dll文件)拷贝至C:\Qt\Qt5.1.0\5.1.0\mingw48_32\bin目录下

5.2将静态库(.a文件)拷贝至C:\Qt\Qt5.1.0\5.1.0\mingw48_32\lib目录下

5.3将master\qt-qtftp\src\qftp目录下的两个头文件qftp.h和qurlinfo.h

拷贝至C:\Qt\Qt5.1.0\5.1.0\mingw48_32\include\QtNetwork目录下

5.4在该目录下创建一个文件QFtp注意没有扩展名

5.5用记事本打开QFtp文件,并且在其中写上#include”qftp.h”

 

6.使用编译好的库

需要连接哪个库就在pro文件中连接哪个库

例如:

    LIBS+="C:/Qt/Qt5.1.0/5.1.0/mingw48_32/bin/Qt5Ftp.dll"

7.然后你原来基于QFtp写的程序就可以成功编译了

 

http://2662597.blog.51cto.com/2652597/1279806

posted @ 2016-07-12 23:45  findumars  Views(1919)  Comments(0Edit  收藏  举报