я следовать инструкциям build xerces in linux ./configure сделать сделать установкиC++ Xerces ссылка без определения, но определяется
Но я пытаюсь запустить первый пример из 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
Как я могу решить это проблемы?
Звучит, как вы» не связываясь с библиотеками xerces. Покажите свои команды компиляции/ссылки. –
Я поставил вывод сборки в этот pastebin http://pastebin.com/Bdcn9E1R. Если полезно, я использую код :: blocks – omixam
Oh! У вас есть причина, по которой проблема заключается в том, что Code :: Blocks не автоматически обнаруживает динамическую библиотеку системы. Нам нужно перейти к Project-> Build Options-> Linker Settings и добавить имя вашей библиотеки (в нашем случае xerces-c-3.1) без префикса lib. Ок, а не строить и работать без эррос. Это похоже на g ++ -o main main.cpp /path-to-your-lib/src/.libs/libxerces-c-3.1.so – omixam