我想写一个简单的Qt应用程序,它将访问zip文件并阅读这些zip文件的内容(内容是文本文件)。许多职位说Quazip是解决方案。Qt和zip文件
作为Qt新手,来自.Net背景,我真的不知道如何使用Quazip,我下载了Quazip源代码,但我不确定,应该编译它还是应该使用源代码在我的项目中。我真的不知道。
任何帮助,非常感谢。 此致敬礼。
我想写一个简单的Qt应用程序,它将访问zip文件并阅读这些zip文件的内容(内容是文本文件)。许多职位说Quazip是解决方案。Qt和zip文件
作为Qt新手,来自.Net背景,我真的不知道如何使用Quazip,我下载了Quazip源代码,但我不确定,应该编译它还是应该使用源代码在我的项目中。我真的不知道。
任何帮助,非常感谢。 此致敬礼。
看起来你有不同的选择。您可以通过将相关文件复制到项目中来立即使用源代码。默认情况下,然而,当你运行
> make install
,并在这种情况下,你需要到相关路径,以便发现是静态库添加到您的.pro文件静态库进行编译。
好了,你有几种选择:
qmake CONFIG+=staticlib
)。优点:更新更容易,因为您不必处理结构更改,只需重新编译QuaZip并重建/重新链接项目。缺点:你仍然需要重新编译和重新链接。如果你只是需要阅读一些随机项目中的一些zip文件,这三者中的任何一个都可以。你可能不需要更新QuaZip,除非你发现一些需要修复的bug。
至于二进制兼容性:保证三级版本更改(x.y.z1 - > x.y.z2)是二进制兼容的。至于小版本的变化(x.y1 - > x.y2),它们在一段时间内可能不会是二进制兼容的,直到Pimpl成语正确实施。
很多谢谢谢尔盖 – Deeb 2011-02-26 09:01:02
它不再使用“staticlib”作为默认值。它也没有将它设置为DLL,所以使用了平台默认值,这意味着大多数平台的动态(共享)库。文档仍然提到静态库,但已经过时。 – 2011-02-26 08:16:41
非常感谢fnokke和Sergey。但即时通讯仍然不知道下一步该怎么做,即时通讯非常抱歉,如果我要求在一个坚果壳答案:)但正如我所说的我是相当新的Qt。 – Deeb 2011-02-26 08:30:01
@Deeb,那么现在就用第一个也是最简单的方法。将源添加到您的项目中,并将它们视为您项目的所有其他类。换句话说,只需将quazip子目录中的所有* .h,* .cpp,* .c文件复制到您的sources目录即可。 – 2011-02-26 08:35:15