[tex-k] libtool bug on Solaris 2.7 with non-GNU linker
Heiko Stamer
stamer at flower.theory.informatik.uni-kassel.de
Wed Jul 27 10:03:21 CEST 2005
Hello,
I want to report a bug (basically a libtool problem) which has been occured on
our sparc-sun-solaris (Solaris 2.7) platform. It seems to me that the libtool
script is outdated (version 1.4.3) because it passes the GNU option --rpath
(via gcc) to the non-GNU linker /usr/ccs/bin/ld.
For fixing this bug it may be sufficient to update the libtool scripts to
a recent version (>= 1.5.10). Please let me know, if you need further
information about the platform details.
Best regards,
[...]
cd ./kpathsea && make CC='gcc' CFLAGS='-O3 -msupersparc -DSYSV -DSVR4 -I/usr/openwin/include -I/usr/dt/include -I/usr/local/include ' LDFLAGS='-s -R/usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/local/lib ' prefix=/usr/local exec_prefix=/usr/local bindir=/usr/local/bin/sparc-sun-solaris2.7 scriptdir=/usr/local/bin/sparc-sun-solaris2.7 libdir=/usr/local/lib datadir=/usr/local/share infodir=/usr/local/info includedir=/usr/local/include mandir=/usr/local/man manext=1 man1dir=/usr/local/man/man1 texmf=/usr/local/share/texmf web2cdir=/usr/local/share/texmf/web2c vartexfonts=/var/tmp/texfonts texinputdir=/usr/local/share/texmf/tex mfinputdir=/usr/local/share/texmf/metafont mpinputdir=/usr/local/share/texmf/metapost fontdir=/usr/local/share/texmf/fonts fmtdir=/usr/local/share/texmf/web2c/tex basedir=/usr/local/share/texmf/web2c/metafont memdir=/usr/local/share/texmf/web2c/metapost texpooldir=/usr/local/share/texmf/web2c mfpooldir=/usr/local/share/texmf/web2c mppooldir=/usr/local/share/texmf/web2c dvips_plain_macrodir=/usr/local/share/texmf/tex/plain/dvips dvilj_latex2e_macrodir=/usr/local/share/texmf/tex/latex/dvilj dvipsdir=/usr/local/share/texmf/dvips psheaderdir=/usr/local/share/texmf/dvips default_texsizes='300:600'
make[1]: Entering directory `/usr/local/src/tetex-src-3.0/texk/kpathsea'
/bin/sh ../libtool --mode=link gcc -o kpsewhich -s -R/usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/local/lib kpsewhich.o ../kpathsea/libkpathsea.la -lm
gcc -o kpsewhich -s kpsewhich.o ../kpathsea/.libs/libkpathsea.a -lm -Wl,--rpath -Wl,/usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/local/lib
/usr/ccs/bin/ld: illegal option -- -
usage: ld [-6:abc:d:e:f:h:il:mo:p:rstu:z:B:CD:F:GI:L:M:N:P:Q:R:S:VY:?] file(s)
[-64] enforce a 64-bit link-edit
[-a] create an absolute file
[-b] do not do special PIC relocations in a.out
[-B direct] specify `direct' bindings for executable when run
[-B dynamic | static]
search for shared libraries|archives
[-B eliminate] eliminate unqualified global symbols from the
symbol table
[-B group] relocate object from within group
[-B local] reduce unqualified global symbols to local
[-B reduce] process symbol reductions
[-B symbolic] bind external references to definitions when creating
shared objects
[-c name] record configuration file `name'
[-C] demangle C++ symbol name diagnostics
[-d y | n] operate in dynamic|static mode
[-D token,...] print diagnostic messages
[-e epsym] use `epsym' as entry point address
[-f name] specify library for which this file is an auxiliary
filter
[-F name] specify library for which this file is a filter
[-G] create a shared object
[-h name] use `name' as internal shared object identifier
[-i] ignore LD_LIBRARY_PATH setting
[-I name] use `name' as path of interpreter
[-l x] search for libx.so or libx.a
[-L path] search for libraries in directory `path'
[-m] print memory map
[-M mapfile] use processing directives contained in `mapfile'
[-N string] create a dynamic dependency for `string'
[-o outfile] name the output file `outfile'
[-p auditlib] identify audit library to accompany this object
[-P auditlib] identify audit library for processing the dependencies
of this object
[-Q y | n] do|do not place version information in output file
[-r] create a relocatable object
[-R path] specify a library search path to be used at run time
[-s] strip any symbol and debugging information
[-S supportlib]
specify a link-edit support library
[-t] do not warn of multiply-defined symbols that have
different sizes or alignments
[-u symname] create an undefined symbol `symname'
[-V] print version information
[-Y P,dirlist] use `dirlist' as a default path when searching for
libraries
[-z absexec] when building an executable absolute symbols
referenced in dynamic objects are promoted to
the executable
[-z allextract | defaultextract | weakextract]
extract all member files, only members that resolve
undefined tor tentative symbols, or allow extraction of
archive members to resolvetweak references from
archive files
[-z combreloc] combine multiple relocation sections
[-z nocompstrtab] disable compression of string tables
[-z defs] disallow undefined symbol references
[-z endfiltee] marks a filtee such that it will terminate a filters
search
[-z finiarray=function]
name of function to be appended to the .finiarray
[-z groupperm | nogroupperm]
enable|disable setting of group permissions
on dynamic dependencies
[-z ignore | record]
ignore|record unused dynamic dependencies
[-z initarray=function]
name of function to be appended to the .initarray
[-z initfirst] mark object to indicate that its .init section should
be executed before the .init section of any other
objects
[-z interpose] dynamic object is to be an `interposer' on direct
bindings
[-z lazyload | nolazyload]
enable|disable delayed loading of shared objects
[-z ld32=arg1,arg2,...]
define arguments applicable to the 32-bit class of ld(1)
[-z ld64=arg1,arg2,...]
define arguments applicable to the 64-bit class of ld(1)
[-z loadfltr] mark filter as requiring immediate loading of its
filtees at runtime
[-z muldefs] allow multiply-defined symbols
[-z nodefs] allow undefined symbol references
[-z nodefaultlib]
mark object to ignore any default library search path
[-z nodelete] mark object as non-deletable
[-z nodlopen] mark object as non-dlopen()'able
[-z nodump] mark object as non-dldump()'able
[-z nopartial] expand any partially initialized symbols
[-z noversion] don't record any version sections
[-z now] mark object as requiring non-lazy binding
[-z origin] mark object as requiring $ORIGIN processing
[-z preinitarray=function]
name of function to be appended to the .preinitarray
[-z redlocsym] reduce local syms in .symtab to a minimum
[-z rescan] rescan archive list until no further member
extraction occurs
[-z text] disallow output relocations against text
[-z textoff] allow output relocations against text
[-z textwarn] warn if there are relocations against text
[-z verbose] generate warnings for suspicious processings
collect2: ld returned 1 exit status
make[1]: *** [kpsewhich] Error 1
make[1]: Leaving directory `/usr/local/src/tetex-src-3.0/texk/kpathsea'
make: *** [do-kpathsea] Error 2
--
Heiko Stamer <stamer at theory.informatik.uni-kassel.de>
More information about the tex-k
mailing list