[tex-live] TeX Live 2007 xetex, xdvipdfmx shared library woes on Solaris 10 sparc
Paul Eggert
eggert at CS.UCLA.EDU
Tue May 8 07:39:14 CEST 2007
Vladimir Volovich <vvv at vsu.ru> writes:
> i grepped my build log, and i see that -R was in fact used.
Yes, but the build used -L/opt/csw/lib -R/opt/csw/lib. This requires
that the relevant libraries be installed in one particular place,
namely /opt/csw/lib. Was that the intent? If so, this needs to be
documented, as it is not a standard location in Solaris 8 or 10. But
ideally, the installation procedure should does not require 3rd-party
libraries to be installed in a nonstandard root-only location. It'd
be better if TeX Live "just worked".
> well, i thought it's easier to install fontconfig package (with its
> dependencies) from blastwave, because the packages depend on Solaris
> version, and for example, fontconfig is included in the standard
> Solaris 10 distribution from Sun.
It sounds like that for TeX Live to work, blastwave-supplied libraries
for Solaris 8 must be installed into /opt/csw/lib. I don't have root
privileges for the host in question so this isn't a simple option for
me. Can the blastwave-supplied libs be distributed as part of TeX
Live? That should solve the problem portably on all Solaris 8 sparc
hosts (Solaris 8 or newer), though it may not work as well as using
Solaris 10-supplied libraries when on Solaris 10.
> i can't check now, but probably there are these duplicated
> dependencies on libfreetype (one of which is found and one of them is
> not found) because libfreetype is linked by xetex itself and by
> libfontconfig.
Yes, that's it. "ldd -v" confirms this:
$ ldd -v bin/sparc-solaris/xetex
find object=libsocket.so.1; required by bin/sparc-solaris/xetex
libsocket.so.1 => /lib/libsocket.so.1
find version=libsocket.so.1
libsocket.so.1 (SISCD_2.3) => /lib/libsocket.so.1
find object=libfontconfig.so.1; required by bin/sparc-solaris/xetex
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1
find object=libiconv.so.2; required by bin/sparc-solaris/xetex
libiconv.so.2 => (file not found)
find object=libfreetype.so.6; required by bin/sparc-solaris/xetex
libfreetype.so.6 => (file not found)
find object=libz.so; required by bin/sparc-solaris/xetex
libz.so => /usr/lib/libz.so
find object=libexpat.so.0; required by bin/sparc-solaris/xetex
libexpat.so.0 => (file not found)
find object=libm.so.1; required by bin/sparc-solaris/xetex
libm.so.1 => /lib/libm.so.1
find version=libm.so.1
libm.so.1 (SUNW_1.1) => /lib/libm.so.1
find object=libpthread.so.1; required by bin/sparc-solaris/xetex
libpthread.so.1 => /lib/libpthread.so.1
find version=libpthread.so.1
libpthread.so.1 (SUNW_0.9) => /lib/libpthread.so.1
find object=libCstd.so.1; required by bin/sparc-solaris/xetex
libCstd.so.1 => /usr/lib/libCstd.so.1
find version=libCstd.so.1
libCstd.so.1 (SUNW_1.1.1) => /usr/lib/libCstd.so.1
libCstd.so.1 (SUNW_1.2) => /usr/lib/libCstd.so.1
find object=libCrun.so.1; required by bin/sparc-solaris/xetex
libCrun.so.1 => /usr/lib/libCrun.so.1
find version=libCrun.so.1
libCrun.so.1 (SUNW_1.5) => /usr/lib/libCrun.so.1
find object=libc.so.1; required by bin/sparc-solaris/xetex
libc.so.1 => /lib/libc.so.1
find version=libc.so.1
libc.so.1 (SUNW_0.7) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libnsl.so.1; required by /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
find version=libnsl.so.1
libnsl.so.1 (SUNW_1.7) => /lib/libnsl.so.1
libnsl.so.1 (SUNWprivate_1.1) => /lib/libnsl.so.1
find object=libc.so.1; required by /lib/libsocket.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.19) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libfreetype.so.6; required by /usr/lib/libfontconfig.so.1
libfreetype.so.6 => /usr/sfw/lib/libfreetype.so.6
find object=libz.so.1; required by /usr/lib/libfontconfig.so.1
find object=libexpat.so.0; required by /usr/lib/libfontconfig.so.1
libexpat.so.0 => /usr/sfw/lib/libexpat.so.0
find object=libc.so.1; required by /usr/lib/libfontconfig.so.1
find version=libc.so.1
libc.so.1 (SUNW_0.7) => /lib/libc.so.1
find object=libc.so.1; required by /usr/lib/libz.so
find version=libc.so.1
libc.so.1 (SUNW_1.1) => /lib/libc.so.1
find object=libCrun.so.1; required by /usr/lib/libCstd.so.1
find version=libCrun.so.1
libCrun.so.1 (SUNW_1.5) => /usr/lib/libCrun.so.1
find object=libc.so.1; required by /usr/lib/libCstd.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.1) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libc.so.1; required by /usr/lib/libCrun.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.1) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libmp.so.2; required by /lib/libnsl.so.1
libmp.so.2 => /lib/libmp.so.2
find version=libmp.so.2
libmp.so.2 (SUNW_1.1) => /lib/libmp.so.2
libmp.so.2 (SUNWprivate_1.1) => /lib/libmp.so.2
find object=libmd5.so.1; required by /lib/libnsl.so.1
libmd5.so.1 => /lib/libmd5.so.1
find version=libmd5.so.1
libmd5.so.1 (SUNW_1.1) => /lib/libmd5.so.1
find object=libscf.so.1; required by /lib/libnsl.so.1
libscf.so.1 => /lib/libscf.so.1
find version=libscf.so.1
libscf.so.1 (SUNW_1.1) => /lib/libscf.so.1
find object=libc.so.1; required by /lib/libnsl.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.22.2) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libz.so.1; required by /usr/sfw/lib/libfreetype.so.6
find version=libz.so.1
libz.so.1 (SUNW_1.1) => /usr/lib/libz.so
find object=libc.so.1; required by /usr/sfw/lib/libfreetype.so.6
find version=libc.so.1
libc.so.1 (SISCD_2.3) => /lib/libc.so.1
find object=libc.so.1; required by /usr/sfw/lib/libexpat.so.0
find version=libc.so.1
libc.so.1 (SYSVABI_1.3) => /lib/libc.so.1
find object=libc.so.1; required by /lib/libmp.so.2
find version=libc.so.1
libc.so.1 (SYSVABI_1.3) => /lib/libc.so.1
find object=libc.so.1; required by /lib/libmd5.so.1
find version=libc.so.1
libc.so.1 (SUNW_0.9) => /lib/libc.so.1
find object=libdoor.so.1; required by /lib/libscf.so.1
libdoor.so.1 => /lib/libdoor.so.1
find version=libdoor.so.1
libdoor.so.1 (SUNWprivate_1.1) => /lib/libdoor.so.1
find object=libuutil.so.1; required by /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
find version=libuutil.so.1
libuutil.so.1 (SUNWprivate_1.1) => /lib/libuutil.so.1
find object=libc.so.1; required by /lib/libscf.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.21) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libc.so.1; required by /lib/libdoor.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.22) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
find object=libc.so.1; required by /lib/libuutil.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.19) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
object=/lib/libm.so.1; filter for libm.so.2
find object=libm.so.2; required by /lib/libm.so.1
libm.so.2 => /lib/libm.so.2
find object=libc.so.1; required by /lib/libm.so.2
find version=libc.so.1
libc.so.1 (SUNW_0.7) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
object=/lib/libpthread.so.1; filter for libc.so.1
find object=libc.so.1; required by /lib/libpthread.so.1
object=/usr/lib/libCstd.so.1; filter for $ORIGIN/cpu/$ISALIST/libCstd_isa.so.1
find object=/usr/lib/cpu/sparcv9/libCstd_isa.so.1; required by /usr/lib/libCstd.so.1
/usr/lib/cpu/sparcv9/libCstd_isa.so.1 => (file not found)
find object=/usr/lib/cpu/sparcv8plus/libCstd_isa.so.1; required by /usr/lib/libCstd.so.1
/usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
find object=libCrun.so.1; required by /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
find version=libCrun.so.1
libCrun.so.1 (SUNW_1.5) => /usr/lib/libCrun.so.1
find object=libc.so.1; required by /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
find version=libc.so.1
libc.so.1 (SUNW_0.9) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
object=/lib/libc.so.1; filter for /usr/lib/ld.so.1
object=/lib/libc.so.1; filter for libm.so.2
find object=libm.so.2; required by /lib/libc.so.1
object=/lib/libc.so.1; filter for /platform/$PLATFORM/lib/libc_psr.so.1
find object=/platform/SUNW,Sun-Fire-T1000/lib/libc_psr.so.1; required by /lib/libc.so.1
/platform/SUNW,Sun-Fire-T1000/lib/libc_psr.so.1
object=/lib/libnsl.so.1; filter for libc.so.1
find object=libc.so.1; required by /lib/libnsl.so.1
find version=libc.so.1
libc.so.1 (SUNW_1.22.2) => /lib/libc.so.1
libc.so.1 (SUNWprivate_1.1) => /lib/libc.so.1
object=/lib/libmd5.so.1; filter for /platform/$PLATFORM/lib/libmd5_psr.so.1
find object=/platform/SUNW,Sun-Fire-T1000/lib/libmd5_psr.so.1; required by /lib/libmd5.so.1
/platform/SUNW,Sun-Fire-T1000/lib/libmd5_psr.so.1 => (file not found)
More information about the tex-live
mailing list