2015-12-24 1 views
0

я следовать инструкциям 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 

Как я могу решить это проблемы?

+0

Звучит, как вы» не связываясь с библиотеками xerces. Покажите свои команды компиляции/ссылки. –

+0

Я поставил вывод сборки в этот pastebin http://pastebin.com/Bdcn9E1R. Если полезно, я использую код :: blocks – omixam

+1

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

ответ

0

Anon Mail есть причина.

Проблема в том, что Код :: Блоки не система автоматического обнаружения системы динамической библиотеки.

Нам нужно идти к

Project> Build Options-> Настройки компоновщика

и чем добавить название вашей библиотеки (в нашем случае Xerces-с-3,1) без префикса lib. Ок, а не строить и работать без эррос.

Это как сделать

г ++ -o главный main.cpp /path-to-your-lib/src/.libs/libxerces-c-3.1.so

Смежные вопросы