But I don’t have the libXMLParser.so - library even though I have xml enabled. Could anybody tell me what I am missing? Here is the info about my (kubuntu) system:
2.6.31-22-generic #60-Ubuntu SMP Thu May 27 00:22:23 UTC 2010 i686 GNU/Linux
[quote=“cmosquer”]Did you try running the xml examples in the folder
{rootSOURCE}/tutorials/xml ???
Cristian[/quote]
Hi Cristian,
thanks for your reply. I try to compile an application against ROOT, which has a dependence on libXMLParser.so. This lib is presented in other ROOT installations, for instance, on the lxplus cluster at CERN. But I don’t have it in my ROOT installation and I don’t understand why.
I’ve just tried to run the examples you have pointed me. The xmlnewfile.C and xmlreadfile.C runs fine. I see that they have a dependence on libXMLIO.so, which is not missing. However, I am not able to run other example macros. Here is what I am doing:
root -l
root [0] .L DOMParsePerson.C++
and the error message (only few first lines) looks like this:
Info in TUnixSystem::ACLiC: creating shared library /home/gia/test/./DOMParsePerson_C.so
Error in : Person inherits from TObject but does not have its own ClassDef
In file included from /home/gia/test/DOMParsePerson_C_ACLiC_dict.h:33,
from /home/gia/test/DOMParsePerson_C_ACLiC_dict.cxx:16:
/home/gia/test/./DOMParsePerson.C: In member function ‘Person* PersonList::ParsePerson(TXMLNode*, Int_t)’:
/home/gia/test/./DOMParsePerson.C:182: warning: ‘date’ may be used uninitialized in this function
/home/gia/test/./DOMParsePerson.C:183: warning: ‘address’ may be used uninitialized in this function
dlopen error: /home/gia/test/./DOMParsePerson_C.so: undefined symbol: _ZN8TXMLNode11GetChildrenEv
Load Error: Failed to load Dynamic link library /home/gia/test/./DOMParsePerson_C.so
/usr/lib/gcc/i486-linux-gnu/4.4.1/…/…/…/…/lib/crt1.o: In function _start': /build/buildd/eglibc-2.10.1/csu/../sysdeps/i386/elf/start.S:115: undefined reference tomain’
/home/gia/test/DOMParsePerson_C_ACLiC_dict.o: In function PersonList::ParseFile(TString)': DOMParsePerson_C_ACLiC_dict.cxx:(.text._ZN10PersonList9ParseFileE7TString[PersonList::ParseFile(TString)]+0x28): undefined reference toTDOMParser::TDOMParser()‘
DOMParsePerson_C_ACLiC_dict.cxx:(.text._ZN10PersonList9ParseFileE7TString[PersonList::ParseFile(TString)]+0x85): undefined reference to TXMLParser::GetParseCodeMessage(int) const' DOMParsePerson_C_ACLiC_dict.cxx:(.text._ZN10PersonList9ParseFileE7TString[PersonList::ParseFile(TString)]+0xcc): undefined reference toTXMLDocument::GetRootNode() const’
you need to have libxml2 installed before configuring ROOT. configure told you (e.g. at the end) that it did not enable xml because it didn’t find the prerequisite library.
you need to have libxml2 installed before configuring ROOT. configure told you (e.g. at the end) that it did not enable xml because it didn’t find the prerequisite library.
Cheers, Axel.[/quote]
Hello Axel,
thanks a lot for the help. The problem is solved now. I had the libxml2 library installed but configuration for xml was failing anyway. It seems one needs to have libxml source package also installed. After I installed libxml++*-dev I was able to compile ROOT xml.