[libxml++] different behavior on solaris/x86 and linux/x86 of Document::create_root_node?



i wrote a short program:
#include <iostream>

#include <libxml++/libxml++.h>

using namespace std;
using namespace xmlpp;

main()
{
try {
    xmlpp::Document document;
    xmlpp::Node* nodeRoot = document.create_root_node("exampleroot");
    cout << nodeRoot << endl;
} catch(const std::exception& ex) {
  cout << "Exception \"" << ex.what() << "\"" << endl;
}


which on my solaris x86 box cout's 0, and on linux cout's a valid address. both platforms are using gcc-3.2.3. has anyone else run into this?

here is the solaris/x86 ldd:
	libxml++-0.1.so.10 =>	 /opt/Gcc3/gnome/2.2/lib/libxml++-0.1.so.10
	libxml2.so.2 =>	 /opt/Gcc3/lib/libxml2.so.2
	libz.so =>	 /opt/Gcc3/lib/libz.so
	libpthread.so.1 =>	 /usr/lib/libpthread.so.1
	libiconv.so.2 =>	 /opt/Gcc3/lib/libiconv.so.2
	libsocket.so.1 =>	 /usr/lib/libsocket.so.1
	libnsl.so.1 =>	 /usr/lib/libnsl.so.1
	libstdc++.so.5 =>	 /opt/Gcc3/lib/libstdc++.so.5
	libm.so.1 =>	 /usr/lib/libm.so.1
	libgcc_s.so.1 =>	 /opt/Gcc3/lib/libgcc_s.so.1
	libc.so.1 =>	 /usr/lib/libc.so.1
	libintl.so.2 =>	 /opt/Gcc3/lib/libintl.so.2
	libdl.so.1 =>	 /usr/lib/libdl.so.1
	libmp.so.2 =>	 /usr/lib/libmp.so.2
	libthread.so.1 =>	 /usr/lib/libthread.so.1

and the linux/x86 ldd:
	libxml++-0.1.so.10 => /usr/lib/libxml++-0.1.so.10 (0x40025000)
	libxml2.so.2 => /usr/lib/libxml2.so.2 (0x4003a000)
	libz.so.1 => /usr/lib/libz.so.1 (0x40132000)
	libpthread.so.0 => /lib/libpthread.so.0 (0x40143000)
libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3/libstdc++.so.5 (0x40193000)
	libm.so.6 => /lib/libm.so.6 (0x40246000)
libgcc_s.so.1 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3/libgcc_s.so.1 (0x40268000)
	libc.so.6 => /lib/libc.so.6 (0x40271000)
	/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

thanks!
-tim





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]