Solaris linker version map annoyances (was: Re: LibreOffice / openIndiana ...)

Jonathan Adams t12nslookup at
Thu Mar 15 04:52:15 PDT 2012

ok, the problem (isolated by Michael) is in the xmlreader ...

I have tried compiling with gcc compilers from a different package
maintainer (although strangely still 4.6.2), but the issue appears to
stay the same.

system supplied g++:
sal at salmon190-241:~$ /usr/gcc/4.6/bin/g++ -v
Using built-in specs.
Target: i386-pc-solaris2.11
Configured with: ../gcc-4.6.2/configure --prefix=/usr/gcc/4.6
--libdir=/usr/gcc/4.6/lib --libexecdir=/usr/gcc/4.6/lib
--mandir=/usr/gcc/4.6/share/man --infodir=/usr/gcc/4.6/info
--with-build-time-tools=/usr/sfw --with-as=/usr/sfw/bin/gas
--with-gnu-as --with-ld=/usr/bin/ld --without-gnu-ld
--enable-languages=c,c++,fortran,objc --enable-shared --disable-static
--enable-decimal-float --with-gmp=/usr/gnu --with-mpfr=/usr/gnu
--with-mpc=/usr/gnu --with-libiconv-prefix=/usr/gnu -enable-nls
Thread model: posix
gcc version 4.6.2 (GCC)

OpenCSW supplied g++:
sal at salmon190-241:~$ /opt/csw/bin/g++ -v
Reading specs from /opt/csw/lib/gcc/i386-pc-solaris2.10/4.6.2/specs
Target: i386-pc-solaris2.10
Configured with:
--program-suffix=-4.6 --prefix=/opt/csw --exec_prefix=/opt/csw
--bindir=/opt/csw/bin --sbindir=/opt/csw/sbin
--libexecdir=/opt/csw/libexec --datadir=/opt/csw/share
--sysconfdir=/etc/opt/csw --sharedstatedir=/opt/csw/share
--localstatedir=/var/opt/csw --libdir=/opt/csw/lib
--infodir=/opt/csw/share/info --includedir=/opt/csw/include
--mandir=/opt/csw/share/man --with-gnu-as --with-as=/opt/csw/bin/gas
--without-gnu-ld --with-ld=/usr/ccs/bin/ld --enable-nls
--with-included-gettext --with-libiconv-prefix=/opt/csw --with-x
--with-mpfr=/opt/csw --with-gmp=/opt/csw --with-ppl=/opt/csw
--with-cloog=/opt/csw --enable-cloog-backend=isl
--enable-java-awt=xlib --enable-libada --enable-libssp
--enable-objc-gc --enable-threads=posix
Thread model: posix
gcc version 4.6.2 (GCC)

both are linked to the Sun supplied ld linker ...

there are issues in the "private" block of xmlreader.hxx where the
"state_" global variable seemed to be forgotten between procedure
calls in xmlreader.cxx

I played with the order of everything in the private block till I
found that placing "stack_" above all the other variables caused it to
keep state (with different exceptions being reported in i18npool, to
do with "end_" and "pos_")

After looking further I found that moving "ElementStack elements_;" to
the end appears to keep all variables alive, but I'm now getting a
core dump every time I run saxparser.

tail of truss output:
11477/1:        write(2, " 0\n", 2)                             = 2
11477/1:            Incurred fault #6, FLTBOUNDS  %pc = 0xFEC8F35C
11477/1:              siginfo: SIGSEGV SEGV_ACCERR addr=0xFEC999EE
11477/1:            Received signal #11, SIGSEGV [default]
11477/1:              siginfo: SIGSEGV SEGV_ACCERR addr=0xFEC999EE

gnu debug of the core file:
#0  0xfec79bac in rtl_uString_release (pThis=0x29) at
75              pTempStr++;

I'm well and truly out of my depth with this now.

anyone got any pointers for me to have a look at?


On 6 March 2012 14:24, Jonathan Adams <t12nslookup at> wrote:
> Also I had to undo a revision in the latest git to get it to compile:
>  587  git diff a1410ef073d2117cb2a3c9d9a4e9ecff7d911344
> 90491a073c5b5faee782ad5eab63276fda2342e6 > /tmp/mkdir-p.diff
>  591  patch -Rbp1 < /tmp/mkdir-p.diff
> a change made in the "mkdir -p" which helps on cygwin, unfortunately
> it now "mkdir"s files instead of "touch"ing them causing a very early
> death to my compilation.

More information about the LibreOffice mailing list