Hi Norbert and Stephan. The LD_LIBRARY_PATH looks fine to me: [build IDL] udkapi/com/sun/star/idl mkdir -p /export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/UnoApiPartTarget/udkapi/com/sun/star/ && RESPONSEFILE=/tmp/gbuild.LYKziC && SOLARBINDIR=/export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/bin LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"/export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib:/export/home/bautsche/libre-office/libreoffice-4.1.2.3/instdir/unxsogi.pro/program" /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/bin/idlc -I/export/home/bautsche/libre-office/libreoffice-4.1.2.3/udkapi -M /export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/Dep/UnoApiPartTarget/udkapi/com/sun/star/ -O /export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/UnoApiPartTarget/udkapi/com/sun/star/ -verbose @${RESPONSEFILE} > /dev/null && rm -f ${RESPONSEFILE} && touch /export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/UnoApiPartTarget/udkapi/com/sun/star/idl.done 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: 2360: Killed make[1]: *** [/export/home/bautsche/libre-office/libreoffice-4.1.2.3/workdir/unxsogi.pro/UnoApiPartTarget/udkapi/com/sun/star/idl.done] Killed make[1]: Leaving directory `/export/home/bautsche/libre-office/libreoffice-4.1.2.3' gmake: *** [build] Error 2 bautsche@cressida $ ls -la /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib total 654 drwxr-xr-x 2 bautsche user 11 Oct 31 12:12 ./ drwxr-xr-x 4 bautsche user 4 Oct 31 12:12 ../ -rw-r--r-- 1 bautsche user 66712 Oct 31 12:12 libcodemaker.a -rw-r--r-- 1 bautsche user 25514 Oct 31 12:12 libcodemaker_cpp.a -rwxr-xr-x 1 bautsche user 133221 Oct 31 12:12 libreglo.so* -rwxr-xr-x 1 bautsche user 161724 Oct 31 12:12 libstorelo.so* lrwxrwxrwx 1 bautsche user 15 Oct 31 12:12 libuno_sal.so -> libuno_sal.so.3* -rwxr-xr-x 1 bautsche user 377081 Oct 31 12:12 libuno_sal.so.3* lrwxrwxrwx 1 bautsche user 25 Oct 31 12:12 libuno_salhelpergcc3.so -> libuno_salhelpergcc3.so.3* -rwxr-xr-x 1 bautsche user 36660 Oct 31 12:12 libuno_salhelpergcc3.so.3* -rwxr-xr-x 1 bautsche user 229716 Oct 31 12:12 libunoidllo.so* bautsche@cressida $ Also: bautsche@cressida $ readelf -d solver/unxsogi.pro/bin/idlc Dynamic section at offset 0x3a6a0 contains 29 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libnsl.so.1] 0x00000001 (NEEDED) Shared library: [libsocket.so.1] 0x00000001 (NEEDED) Shared library: [libreglo.so] 0x00000001 (NEEDED) Shared library: [libuno_sal.so.3] 0x00000001 (NEEDED) Shared library: [libuno_salhelpergcc3.so.3] 0x00000001 (NEEDED) Shared library: [libstdc++.so.6] 0x00000001 (NEEDED) Shared library: [libm.so.2] 0x00000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x00000001 (NEEDED) Shared library: [libc.so.1] 0x0000000f (RPATH) Library rpath: [$ORIGIN/../../ure-link/lib:/export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib] 0x0000000c (INIT) 0x804a140 0x0000000d (FINI) 0x8072500 0x6ffffef5 (GNU_HASH) 0x80480e8 0x00000005 (STRTAB) 0x8048be0 0x00000006 (SYMTAB) 0x80481b0 0x0000000a (STRSZ) 3438 (bytes) 0x0000000b (SYMENT) 16 (bytes) 0x00000015 (DEBUG) 0x0 0x00000003 (PLTGOT) 0x80837b0 0x00000002 (PLTRELSZ) 1096 (bytes) 0x00000014 (PLTREL) REL 0x00000017 (JMPREL) 0x8049cec 0x00000011 (REL) 0x8049b94 0x00000012 (RELSZ) 344 (bytes) 0x00000013 (RELENT) 8 (bytes) 0x6ffffffe (VERNEED) 0x8049a94 0x6fffffff (VERNEEDNUM) 4 0x6ffffff0 (VERSYM) 0x804994e 0x00000000 (NULL) 0x0 bautsche@cressida $ ldd solver/unxsogi.pro/bin/idlc libnsl.so.1 => /lib/libnsl.so.1 libsocket.so.1 => /lib/libsocket.so.1 libreglo.so => /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib/libreglo.so libuno_sal.so.3 => /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib/libuno_sal.so.3 libuno_salhelpergcc3.so.3 => /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib/libuno_salhelpergcc3.so.3 libstdc++.so.6 => /usr/lib/libstdc++.so.6 libm.so.2 => /lib/libm.so.2 libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 libc.so.1 => /lib/libc.so.1 libstorelo.so => /export/home/bautsche/libre-office/libreoffice-4.1.2.3/solver/unxsogi.pro/lib/libstorelo.so libpthread.so.1 => /lib/libpthread.so.1 bautsche@cressida $I wonder whether some of the macro magic that Norbert Thiebaud mentioned (and that I have no idea how to make sense of) in sal/rtl/strtmpl.cxx isn't working for me on Solaris?
Eric On 01/11/2013 07:51, Stephan Bergmann wrote:
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/51422Note 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".StephanI'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@cressida $_______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
--____
/ . Eric A. Bautsch /-- __ ___ ______________________________________ / / / / / (_____/____(___(__________________/ email: eric.bautsch@pobox.com
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature