草庐IT

EXPORT_SYMBOL_GPL

全部标签

c++ - undefined symbol : _ZN7QString13toUtf8_helperERKS_ at runtime

我有两个使用Qt的项目。一个是用QtCreator开发的,另一个是用Eclipse开发的。两者都使用相同的Qt5.3.1库,都是用GCC编译的。但是,当我运行eclipse中的程序时,它崩溃并显示消息Undefinedsymbol:_ZN7QString13toUtf8_helperERKS_。查找显示产生此错误的代码是path.toStdString().c_str()//pathisaQString在qstring.h中的确切位置是#ifdefined(Q_COMPILER_REF_QUALIFIERS)&&!defined(QT_COMPILING_QSTRING_COMPAT_

c++ - 架构 i386 的 undefined symbol :

我最近转向了Mac,并且正在努力使用命令行编译器。我正在使用g++进行编译,这可以很好地构建单个源文件。如果我尝试添加自定义头文件,当我尝试使用g++进行编译时,我会得到架构i386的undefinedsymbol。然而,这些程序在xCode中编译得很好。我是否遗漏了一些明显的东西?尝试使用g++-m32main.cpp...不知道还能尝试什么。好的,旧代码已编译...已将其缩小到我的构造函数。classMatrix{public:inta;intdeter;Matrix();intdet();};#include"matrix.h"Matrix::Matrix(){a=0;deter

C++ 函数模板,体系结构的 undefined symbol

这个问题在这里已经有了答案:Whycantemplatesonlybeimplementedintheheaderfile?(17个答案)关闭8年前。有人可以向我解释为什么以下代码无法编译吗?希望是我错过的显而易见的事情......函数.hpp:templatestringvector_tostr(std::vectorv);函数.cpp:templatestringvector_tostr(std::vectorv){std::stringstreamss;std::stringthestring="";if(v.size()>0){ssmain.cpp#include"functi

c++ - Qt 5.4 静态构建在 Visual Studio 2013 中产生 "unresolved external symbol"链接错误

我想使用Qt5.4的静态构建。由于没有可用的预编译静态构建,您必须自己从Qt源代码构建一个。我的环境如下:Windows7x64VisualStudio2013终极更新4Qt5VisualStudio插件1.2.4已安装ActivePerl/ActivePython(需要构建Qt源代码)我的程序如下(参见QtDocumentation>Qt5.4>QtforWindows-BuildingfromSource):下载qt-everywhere-opensource-src-5.4.0.zip解压缩到一个临时文件夹按照here所述打开命令提示符(基本上,这类似于打开“VisualStud

c++ - libtool:i686-pc-mingw32 共享中不允许使用 undefined symbol

我正在使用autotools作为我的图书馆的构建系统。最近图书馆被移植到Windows。虽然我遇到了一个奇怪的错误,但库编译和链接成功。配置和制作后只有静态库。除了来自libtool的警告外,一切看起来都正常:libtool:undefinedsymbolsnotallowedini686-pc-mingw32shared我已经通过这段代码导出了Windows机器的所有符号:#ifdef_WIN32#ifdefDLL_EXPORT#defineLIBRARY_API__declspec(dllexport)#else#defineLIBRARY_API__declspec(dllimp

c++ - Unresolved external symbol 错误仅发生在 64 位模式中,而不是在 32 位构建中

我有一个VC++代码(使用VS2008构建),它使用了一些静态库(*.lib文件在编译时静态链接)。为了便于理解,我们将我的EXE代码称为“AAA.EXE”并将lib文件称为“A.lib”、b.lib等...AAA.EXE代码和静态库代码都是使用VS2008构建的。我看到我的“AAA.EXE”在32位版本中运行良好,并且在以64位模式构建AAA.EXE时显示以下链接器错误。当然,我已经在64位模式下重建了静态库,并在我的AAA.EXE中提供了lib路径,如下所示:::“对应于AAA.EXE的项目配置属性->链接器->常规/输入”。这个链接器错误真的困扰了我很长时间。任何帮助是极大的赞赏

c++ - Qt 应用程序抛出 "dyld: Symbol not found: __cg_jpeg_resync_to_restart"

我在OSX上遇到了众所周知的dyld问题。Qt.pro文件:INCLUDEPATH+=/usr/local/Cellar/libpng/1.6.23/include/usr/local/Cellar/jpeg/8d/includeLIBS+=-L/usr/local/Cellar/libpng/1.6.23/lib-L/usr/local/Cellar/jpeg/8d/lib-ljpeg-lpng-ljpeg-lz在运行时我的应用程序抛出:dyld:Symbolnotfound:__cg_jpeg_resync_to_restartReferencedfrom:/System/Libr

c++ - 不是 GPL/LGPL 的跨平台 C++ 声音库?

寻找任何简单的声音库以在非GPL或LGPL的Windows中播放。也就是说,软件本身不是GPL/LGPL,而且它使用的任何后端库都不是GPL/LGPL。我已经搜索了很长时间,我发现所有看起来很有前途的东西(Allegro、SFML等)都包含一些GPL或LGPL代码。我并不是要就许可展开辩论,这只是我的偏好,所以任何知道一些简单事情的人都请告诉我。我不一定要寻找跨平台解决方案,但我也不想依赖PlaySound等内置Windows方法..:)。任何帮助将不胜感激!附言只是为了清楚我所说的简单的意思,这是我需要的最多的功能:将内存中的文件名或数据提供给播放函数。如果可能,定义声音结束时的回调

c++ - poco c++ 静态链接问题与 undefined symbol 引用

我正在尝试像这样链接到POCOC++库的静态版本:g++BCCMain.o-L$_POCO_LIBS-Wl,-Bstatic$_POCO_LIBS/libPocoFoundation.a$_POCO_LIBS/libPocoUtil.a$_POCO_LIBS/libPocoXML.a$_POCO_LIBS/libPocoJSON.a-Wl,-Bdynamic-oBCMain不幸的是,这会导致一些undefinedsymbol引用错误,例如:Poco::Logger::get(std::basic_string,std::allocator>const&)即使Poco::Logger::

c++ - Clrdump (C++) 错误 LNK2019 : unresolved external symbol __imp__RegisterFilter@8 referenced in function _main

我正在使用带有pvcs编译器的makefile系统(使用MicrosoftVisualC++,2008编译器),我收到了几个以下形式的链接错误:errorLNK2019:unresolvedexternalsymbol__imp__RegisterFilter@8referencedinfunction_main尽管使用了extern"C"声明,但还是会发生这种情况,即:extern"C"intCLRDUMP_APIRegisterFilter(LPCWSTRpDumpFileName,unsignedlongDumpType);此外,在makeexe.mak中,库链接如下:$(编译库