Compiling LibreOffice 4.1.2.3 on Solaris

Stephan Bergmann sbergman at redhat.com
Fri Nov 1 08:51:34 CET 2013


On 10/31/2013 01:25 PM, Eric Bautsch wrote:
> I'm trying to compile LibreOffice 4.1.2.3 on Solaris 12 (build 26,
> currently).
>
>     Note: don't get excited, I'm doing this in my spare time and Oracle
>     are in no way endorsing, supporting, or anything else'ing my efforts.
>
> I've been using this thread for assistance and it's been a great help:
> http://comments.gmane.org/gmane.comp.documentfoundation.libreoffice.devel/51422

Note that traditionally OOo had been building/working very well on 
Solaris, but these days there's only very little and seemingly 
occasional initiative to keep that up.  Therefore, Solaris-specific code 
in LO likely keeps rotting over time.

At runtime, the idlc executable needs the libuno_sal.so.3 dynamic 
library to resolve the rtl_string_new symbol (and others).  Therefore, 
idlc contains an RPATH (see "readelf -d solver/unxsogi.pro/bin/idlc") so 
that it finds it *in an installation* ("$ORIGIN/../../ure-link/lib", 
where in an installation idlc is in sdk/bin/ and libuno_sal.so.3 is in 
ure-link/lib/).

However, idlc is also called during the build, where idlc is in 
solver/unxsogi.pro/bin/ and libuno_sal.so.3 is in 
solver/unxsogi.pro/lib/.  To make that work, idlc is called with an 
LD_LIBRARY_PATH that contains solver/unxsogi.pro/lib during the build. 
This is taken care of towards the end of 
solenv/gbuild/platform/com_GCC_defs.mk (gb_Helper_set_ld_path) and 
should work for Solaris.

To see what's going wrong, run "make VERBOSE=t" to see the command line 
of how exactly idlc is called to "[build IDL] udkapi/com/sun/star/idl".

Stephan

> I'm currently struggling with getting a working idlc compiled. Here's
> what happens:
>
>     [build IDL] udkapi/com/sun/star/idl
>     ld.so.1: idlc: fatal: relocation error: file
>     /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/bin/idlc:
>     symbol rtl_string_new: referenced symbol not found
>     /bin/sh: line 1: 8411: Killed
>     make[1]: ***
>     [/export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/UnoApiPartTarget/udkapi/com/sun/star/idl.done]
>     Killed
>     gmake: *** [build] Error 2
>     bautsche at cressida $


More information about the LibreOffice mailing list