gpt4 book ai didi

qt - 在带有 VS2008 的 Windows 上使用 QuaZip

转载 作者:行者123 更新时间:2023-12-04 13:00:29 25 4
gpt4 key购买 nike

我正在使用 QT4.7.3、VS2008 并尝试添加 QuaZip 库。

我得到 QuaZip、Zlib 并编译它,然后我可以制作“quazip.lib”文件。

我将 quazip.lib 添加到“Project property->Configuration Properties->Linker->Input->Additional Dependencies”并包含路径。

我写的源代码如下。

#include "Updater.h"
#include "quazip.h"

Updater::Updater(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);

QuaZip *qZip = new QuaZip();
}

但是,在这里,我遇到了问题。

错误提示如下。

Updater.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: _thiscall QuaZip::QuaZip(void)" (_imp_??0QuaZip@@QAE@XZ) referenced in function "public: __thiscall Updater::Updater(class QWidget *,class QFlags)" (??0Updater@@QAE@PAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z) 1>.\updater.exe : fatal error LNK1120: 1 unresolved externals

我知道当声明存在但定义不存在时会发生此错误。

通过find QuaZip constructor,我发现如下。

QuaZip::QuaZip():
p(new QuaZipPrivate(this))
{
}

我怎样才能让它正确?

感谢您的任何评论。

最佳答案

我在 Quazip 的自述文件中发现了以下消息:

If you want to include QuaZIP sources directly into your project or if you want to use QuaZIP compiled as a static library using "qmake CONFIG+=statliclib", you have to define the QUAZIP_STATIC macro, otherwise you're likely to run into problems as QuaZIP symbols will be marked as dllimported.

也许这对你有帮助。

关于qt - 在带有 VS2008 的 Windows 上使用 QuaZip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8723167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com