c ++ xerces reference没有定义但已定义
c++ xerces reference without define but is defined
我按照 build xerces in linux 的说明进行操作
。/配置
制作
安装
但我正在尝试 运行 来自 Programming Guide
的第一个示例
#include <xercesc/util/PlatformUtils.hpp>
// Other include files, declarations, and non-Xerces-C++ initializations.
using namespace xercesc;
int main(int argc, char* argv[])
{
try {
XMLPlatformUtils::Initialize();
}
catch (const XMLException& toCatch) {
// Do your failure processing here
return 1;
}
// Do your actual work with Xerces-C++ here.
XMLPlatformUtils::Terminate();
// Other terminations and cleanup.
return 0;
}
但我遇到了一些错误:
=== Build: Debug in vasprun_xml (compiler: GNU GCC Compiler) ===
vasprun_xml/main.cpp|22|reference to `xercesc_3_1::XMLUni::fgXercescDefaultLocale' not define
vasprun_xml/main.cpp 22reference to `xercesc_3_1::XMLPlatformUtils::Initialize(char const*, char const*, xercesc_3_1::PanicHandler*, xercesc_3_1::MemoryManager*)' not define
我该如何解决这个问题?
匿名邮件有原因。
问题是 Code::Blocks 没有自动检测系统动态库。
我们需要去
Project->Build Options->Linker Settings
然后添加没有 lib 前缀的库名称(在我们的示例中为 xerces-c-3.1)。好吧,比 build 和 运行 没有错误。
喜欢
g++ -o main main.cpp /path-to-your-lib/src/.libs/libxerces-c-3.1.so
我按照 build xerces in linux 的说明进行操作 。/配置 制作 安装
但我正在尝试 运行 来自 Programming Guide
的第一个示例#include <xercesc/util/PlatformUtils.hpp>
// Other include files, declarations, and non-Xerces-C++ initializations.
using namespace xercesc;
int main(int argc, char* argv[])
{
try {
XMLPlatformUtils::Initialize();
}
catch (const XMLException& toCatch) {
// Do your failure processing here
return 1;
}
// Do your actual work with Xerces-C++ here.
XMLPlatformUtils::Terminate();
// Other terminations and cleanup.
return 0;
}
但我遇到了一些错误:
=== Build: Debug in vasprun_xml (compiler: GNU GCC Compiler) ===
vasprun_xml/main.cpp|22|reference to `xercesc_3_1::XMLUni::fgXercescDefaultLocale' not define
vasprun_xml/main.cpp 22reference to `xercesc_3_1::XMLPlatformUtils::Initialize(char const*, char const*, xercesc_3_1::PanicHandler*, xercesc_3_1::MemoryManager*)' not define
我该如何解决这个问题?
匿名邮件有原因。
问题是 Code::Blocks 没有自动检测系统动态库。
我们需要去
Project->Build Options->Linker Settings
然后添加没有 lib 前缀的库名称(在我们的示例中为 xerces-c-3.1)。好吧,比 build 和 运行 没有错误。
喜欢
g++ -o main main.cpp /path-to-your-lib/src/.libs/libxerces-c-3.1.so