您尚未登录。

楼主 # 2023-03-01 11:16:14

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,363
积分: 1323.5

qt解压zip文件的库有哪些?qzipreader貌似不能设置密码。

搜了下,最先搜到的是qzipreader,qt自带的,不用再编译。尝试解压一个带密码的zip文件,结果不知道该如何设置解压密码。
https://dreamswork.github.io/qt4/classQZipReader.html
在这个网址上,也没找到设置解压密码的方法。

quazip,还得再编译,用法貌似也没qzipreader简单...

离线

楼主 #2 2023-03-02 08:53:00

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,363
积分: 1323.5

Re: qt解压zip文件的库有哪些?qzipreader貌似不能设置密码。

海石生风 说:

这么懒,有源码都不想编译。

嗯,最后还是转到编译quazip,这个是cmake编译,倒是通过编译了,想测试下,尝试编译qztest,结果找不到QtCore...
对cmake还不熟悉...

离线

楼主 #3 2023-03-02 12:10:43

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,363
积分: 1323.5

Re: qt解压zip文件的库有哪些?qzipreader貌似不能设置密码。

cmake编译quazip,倒是直接编译通过了。
想编译下quazip目录里的qztest,直接编译报错,找不到QtCore,修改了CMakeLists.txt文件,指定QtCore位置及目录,可以往下进行。
但是貌似最后链接阶段又报错:

Desktop:~/Qt5/quazipx86/qztest$ make
[  6%] Automatic MOC and UIC for target qztest
[  6%] Built target qztest_autogen
Consolidate compiler generated dependencies of target qztest
[ 13%] Linking CXX executable qztest
/usr/bin/ld: 找不到 -lQuaZip::QuaZip: 没有那个文件或目录
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/qztest.dir/build.make:282:qztest] 错误 1
make[1]: *** [CMakeFiles/Makefile2:85:CMakeFiles/qztest.dir/all] 错误 2
make: *** [Makefile:91:all] 错误 2

离线

楼主 #4 2023-03-02 16:10:43

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,363
积分: 1323.5

Re: qt解压zip文件的库有哪些?qzipreader貌似不能设置密码。

折腾了一天,qztest还是没通过编译。
在pc上的ubuntu里,引用quazip生成的动态库,可以解压带密码的文件。
抄的这个网址的:https://blog.csdn.net/kenfan1647/article/details/116619267

编译ubuntu上用的quazip,没有指定zlib版本及目录,直接cmake,make完成的。
接下来该编译arm板上用的quazip了,不知道在cmake下该如何指定arm板用的zlib路径。

------------------------------------------------------------------

在cmakelists.txt里设置了交叉编译用到的gcc,指定了zlib路径。
结果编译到最后,提示qt库错误,是ubuntu上的qt库,不知道如何设置为arm板上的qt库了...

[ 11%] Linking CXX shared library libquazip1-qt5.so
/opt/Qt/5.13.2/gcc_64/lib/libQt5Core.so.5.13.2: file not recognized: 不可识别的文件格式
collect2: 错误:ld 返回 1
make[2]: *** [quazip/CMakeFiles/QuaZip.dir/build.make:324:quazip/libquazip1-qt5.so.1.4] 错误 1
make[1]: *** [CMakeFiles/Makefile2:99:quazip/CMakeFiles/QuaZip.dir/all] 错误 2
make: *** [Makefile:136:all] 错误 2

-----------------------------------------

我应该找个旧版本的quazip,能用qmake编译的...

-------------------------------------------

下载了0.7.3版本的quazip,交叉编译通过了,烧录到板子上,可以解压带密码的文件。还是qmake熟悉。

最近编辑记录 Gentlepig (2023-03-03 10:57:51)

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn