首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法解析到静态Qwt生成的外部链接

无法解析到静态Qwt生成的外部链接
EN

Stack Overflow用户
提问于 2015-10-02 00:25:31
回答 1查看 1.2K关注 0票数 1

我正在尝试链接到Qwt的静态构建。为了创建静态构建,我修改了qwtconfig.pri以包含

代码语言:javascript
复制
#QWT_CONFIG += QwtDll

我删除了代码中所有的#define QWT_DLL引用。

然而,当我链接到这个库时,我得到了一堆关于QSvgRenderer的未定义的引用:

代码语言:javascript
复制
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __cdecl QSvgRenderer::QSvgRenderer(class QObject *)" (__imp_??0QSvgRenderer@@QEAA@PEAVQObject@@@Z) referenced in function "public: void __cdecl QwtSymbol::setSvgDocument(class QByteArray const &)" (?setSvgDocument@QwtSymbol@@QEAAXAEBVQByteArray@@@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: virtual __cdecl QSvgRenderer::~QSvgRenderer(void)" (__imp_??1QSvgRenderer@@UEAA@XZ) referenced in function "public: virtual void * __cdecl QSvgRenderer::`scalar deleting destructor'(unsigned int)" (??_GQSvgRenderer@@UEAAPEAXI@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: bool __cdecl QSvgRenderer::isValid(void)const " (__imp_?isValid@QSvgRenderer@@QEBA_NXZ) referenced in function "void __cdecl qwtDrawSvgSymbols(class QPainter *,class QPointF const *,int,class QSvgRenderer *,class QwtSymbol const &)" (?qwtDrawSvgSymbols@@YAXPEAVQPainter@@PEBVQPointF@@HPEAVQSvgRenderer@@AEBVQwtSymbol@@@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class QRectF __cdecl QSvgRenderer::viewBoxF(void)const " (__imp_?viewBoxF@QSvgRenderer@@QEBA?AVQRectF@@XZ) referenced in function "public: virtual class QRect __cdecl QwtSymbol::boundingRect(void)const " (?boundingRect@QwtSymbol@@UEBA?AVQRect@@XZ)
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: bool __cdecl QSvgRenderer::load(class QByteArray const &)" (__imp_?load@QSvgRenderer@@QEAA_NAEBVQByteArray@@@Z) referenced in function "public: void __cdecl QwtSymbol::setSvgDocument(class QByteArray const &)" (?setSvgDocument@QwtSymbol@@QEAAXAEBVQByteArray@@@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __cdecl QSvgRenderer::render(class QPainter *,class QRectF const &)" (__imp_?render@QSvgRenderer@@QEAAXPEAVQPainter@@AEBVQRectF@@@Z) referenced in function "public: void __cdecl QwtSymbol::drawSymbol(class QPainter *,class QRectF const &)const " (?drawSymbol@QwtSymbol@@QEBAXPEAVQPainter@@AEBVQRectF@@@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl QSvgRenderer::metaObject(void)const " (?metaObject@QSvgRenderer@@UEBAPEBUQMetaObject@@XZ)
15>qwt.lib(qwt_symbol.obj) : error LNK2001: unresolved external symbol "public: virtual int __cdecl QSvgRenderer::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@QSvgRenderer@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z)
15>qwt.lib(qwt_symbol.obj) : error LNK2001: unresolved external symbol "public: virtual void * __cdecl QSvgRenderer::qt_metacast(char const *)" (?qt_metacast@QSvgRenderer@@UEAAPEAXPEBD@Z)
15>C:\workspace\fixQwt\executables\linkerGUI\bin\Release\linkerGUI.exe : fatal error LNK1120: 9 unresolved externals

在项目配置中,我还需要做什么才能正确地链接到QSvgRenderer

EN

回答 1

Stack Overflow用户

发布于 2015-10-02 20:52:09

我猜你的Qt版本没有SVG支持--或者你忘了把它添加到你的项目依赖中。如果你对SVG一点也不感兴趣,你也可以在qwtconfig.pri中禁用它:

请参阅:"QWT_CONFIG += QwtSvg“

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32892437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档