Re: DEV300_m96: rtld difference on FreeBSD
Stephan Bergmann <[email protected]> Mon, 31 Jan 2011 09:21:26 +0100
| Newsgroups | gmane.comp.openoffice.devel.porting |
|---|---|
| Message-ID | <[email protected]> |
On 01/30/11 07:16, Maho NAKATA wrote: > I encountered another build brekage of DEV300_m96 on FreeBSD. > it seems small difference rtld between Linux and FreeBSD. (FreeBSD uses ELF, including features like RPATH, right?) > On FreeBSD 8, > > # cd basegfx/unxfbsdi.pro/lib ; ldd ./libbasegfxfi.so > ./libbasegfxfi.so: > /libexec/ld-elf.so.1: ./libbasegfxfi.so: Unexpected inconsistency: dependency libuno_sal.so.3 not found > ./libbasegfxfi.so: exit status 1 > > On FreeBSD ldd erroneously exit on libbasegfxfi.so when it > didn't find some libraries. > > On Linux > maho@:~/DEV300_m96/basegfx/unxlngi6.pro/lib$ ldd ./libbasegfxli.so > linux-gate.so.1 => (0x0040d000) > libuno_sal.so.3 => not found > libuno_cppuhelpergcc3.so.3 => not found > libuno_cppu.so.3 => not found > libstlport_gcc.so => not found > libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00542000) > libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00b77000) > libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00d8b000) > libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x008d5000) > /lib/ld-linux.so.2 (0x00e4b000) > > problem here on FreeBSD is that ldd fails after it didn't find some libraries, > whereas on Linux, it just says it doesn't found. But in both cases there is an error (basegfx/$INPATH/lib/libbasegfx*.so does not find the libraries it depends on; which is OK as the basegfx library's location does not match its RPATH settings). It is just reported slightly differently. > It prevents packaging process, so FreeBSD build is broken at instsetoo_native > like following: > ************************************************** > ERROR: ERROR: unopkg sync --verbose -env:BUNDLED_EXTENSIONS_USER="file:///work/OOO/debussy8i386/DEV300_m96/ports/editors/openoffice.org-3-devel/work/DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/install/en-US_inprogress/OOo_3.4.0_FreeBSD_install-arc_en-US/openoffice.org3/share/prereg/bundled" -env:UserInstallation=file:///work/tmp/ooopackaging/i_485471296326978/unxfbsdi.pro/OpenOffice/archive/uno/en-US -env:UNO_JAVA_JFW_ENV_JREHOME=true 2>&1 | failed! > in function: register_extensions > ************************************************** > > ************************************************** > ERROR: Saved logfile: /work/OOO/debussy8i386/DEV300_m96/ports/editors/openoffice.org-3-devel/work/DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/logging/en-US/log_DEV300_en-US.log > ************************************************** > ... cleaning the output tree ... > ... removing directory /work/tmp/ooopackaging/i_485471296326978 ... > Sun Jan 30 03:54:19 2011 (04:41 min.) > dmake: Error code 255, while making 'openoffice_en-US.archive' > > . > > The relevant part of output of "DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/logging/en-US/log_DEV300_en-US.log" is > >> /libexec/ld-elf.so.1: Shared object "libbasegfxfi.so" not found, required by "libtlfi.so" > > Systemcall: unopkg sync --verbose -env:BUNDLED_EXTENSIONS_USER="file:///work/OOO/debussy8i386/DEV300_m96/ports/editors/openoffice.org-3-devel/work/DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/install/en-US_inprogress/OOo_3.4.0_FreeBSD_install-arc_en-US/openoffice.org3/share/prereg/bundled" -env:UserInstallation=file:///work/tmp/ooopackaging/i_671801296343016/unxfbsdi.pro/OpenOffice/archive/uno/en-US -env:UNO_JAVA_JFW_ENV_JREHOME=true 2>&1 | > /libexec/ld-elf.so.1: Shared object "libbasegfxfi.so" not found, required by "libtlfi.so" > ERROR: Could not execute "unopkg sync --verbose -env:BUNDLED_EXTENSIONS_USER="file:///work/OOO/debussy8i386/DEV300_m96/ports/editors/openoffice.org-3-devel/work/DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/install/en-US_inprogress/OOo_3.4.0_FreeBSD_install-arc_en-US/openoffice.org3/share/prereg/bundled" -env:UserInstallation=file:///work/tmp/ooopackaging/i_671801296343016/unxfbsdi.pro/OpenOffice/archive/uno/en-US -env:UNO_JAVA_JFW_ENV_JREHOME=true 2>&1 |"!Exitcode: '256' > > It seems we need LD_LIBRARY_PATH at packaging process(?) What would be interesting is the output of ldd /work/OOO/debussy8i386/DEV300_m96/ports/editors/openoffice.org-3-devel/work/DEV300_m96/instsetoo_native/unxfbsdi.pro/OpenOffice/archive/install/en-US_inprogress/OOo_3.4.0_FreeBSD_install-arc_en-US/openoffice.org/basis3.4/program/libtlfi.so -Stephan