pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/46867: Tk 8.5.12 does not build on Solaris
>Number: 46867
>Category: pkg
>Synopsis: Tk 8.5.12 does not build on Solaris
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Aug 28 12:00:01 +0000 2012
>Originator: Jörn Clausen
>Release:
>Organization:
University of Bielefeld
>Environment:
>Description:
The latest release of x11/tk (8.5.12nb1) does not link on Solaris 10:
gcc -O -I/usr/include -I/usr/pkgsrc/20120822/include -O -O -I/usr/include
-I/usr/pkgsrc/20120822/include -pipe -I/usr/include
-I/usr/pkgsrc/20120822/include -L/usr/lib -Wl,-R/usr/lib
-L/usr/pkgsrc/20120822/lib -Wl,-R/usr/pkgsrc/20120822/lib tkAppInit.o
-L/pkgsrc/source/pkgsrc/x11/tk/work.pkgsrc-i86/tk8.5.12/unix -ltk85
-Wl,-R/usr/pkgsrc/20120822/lib -L/usr/pkgsrc/20120822/lib -ltcl85 -lpthread
-L/usr/pkgsrc/20120822/lib -Wl,-R/usr/pkgsrc/20120822/lib -lX11 -lXext -ldl
-lsocket -lnsl -lpthread -lm -Wl,-R,/usr/pkgsrc/20120822/lib -o wish
ld: fatal: library -ltk85: not found
ld: fatal: File processing errors. No output written to wish
collect2: error: ld returned 1 exit status
*** Error code 1
The shared object is present, though:
$ ls -l ./work.pkgsrc-i86/tk8.5.12/unix/libtk8.5.so
-rwxr-xr-x 1 pkgsrc software 1243932 Aug 28 12:51
./work.pkgsrc-i86/tk8.5.12/unix/libtk8.5.so
Building the package outside pkgsrc, but referencing pkgsrc, succeeds:
$ env CPPFLAGS="-I/usr/pkgsrc/20120822/include"
LDFLAGS="-L/usr/pkgsrc/20120822/lib -R/usr/pkgsrc/20120822/lib" ./configure
--with-tcl=/usr/pkgsrc/20120822/lib
...
$ gmake
...
gcc -O -pipe -I/usr/pkgsrc/20120822/include -L/usr/pkgsrc/20120822/lib
-R/usr/pkgsrc/20120822/lib tkAppInit.o -L/pkgsrc/source/local/tk8.5.12/unix
-ltk8.5 -Wl,-R/usr/pkgsrc/20120822/lib -L/usr/pkgsrc/20120822/lib -ltcl85
-lpthread -L/usr/pkgsrc/20120822/lib -lX11 -Wl,-R/usr/pkgsrc/20120822/lib
-L/usr/pkgsrc/20120822/lib -lXft -ldl -lsocket -lnsl -lpthread -lm \
-Wl,-R,/usr/pkgsrc/20120822/lib -o wish
$
I did not spot any significant differences between the two command lines. In
both cases, the path leading to the shared object is referenced by -L.
The dependencies of the two shared objects are different, though. Successful
stand-alone version:
$ ldd libtk8.5.so
libpthread.so.1 => /lib/libpthread.so.1
libX11.so.6 => /usr/pkgsrc/20120822/lib/libX11.so.6
libXft.so.2 => /usr/pkgsrc/20120822/lib/libXft.so.2
libdl.so.1 => /lib/libdl.so.1
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
libm.so.2 => /lib/libm.so.2
libgcc_s.so.1 => /usr/local/gcc/gcc-4.7.0/lib/libgcc_s.so.1
libc.so.1 => /lib/libc.so.1
libxcb.so.1 => /usr/pkgsrc/20120822/lib/libxcb.so.1
libXau.so.6 => /usr/pkgsrc/20120822/lib/libXau.so.6
libXdmcp.so.6 => /usr/pkgsrc/20120822/lib/libXdmcp.so.6
libfontconfig.so.1 => /usr/pkgsrc/20120822/lib/libfontconfig.so.1
libexpat.so.1 => /usr/pkgsrc/20120822/lib/libexpat.so.1
libfreetype.so.6 => /usr/pkgsrc/20120822/lib/libfreetype.so.6
libz.so.1 => /usr/pkgsrc/20120822/lib/libz.so.1
libbz2.so.0 => /usr/pkgsrc/20120822/lib/libbz2.so.0
libXrender.so.1 => /usr/pkgsrc/20120822/lib/libXrender.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libdoor.so.1 => /lib/libdoor.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
Failed pkgsrc version:
$ ldd work.pkgsrc-i86/tk8.5.12/unix/libtk8.5.so
libpthread.so.1 => /lib/libpthread.so.1
libX11.so.6 => /usr/pkgsrc/20120822/lib/libX11.so.6
libXext.so.0 => /usr/pkgsrc/20120822/lib/libXext.so.0
libXext.so.0 (SUNW_1.1) => (version not found)
libXext.so.0 (SUNWprivate) => (version not found)
libdl.so.1 => /lib/libdl.so.1
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
libm.so.2 => /lib/libm.so.2
libgcc_s.so.1 => /usr/local/gcc/gcc-4.7.0/lib/libgcc_s.so.1
libc.so.1 => /lib/libc.so.1
libxcb.so.1 => /usr/pkgsrc/20120822/lib/libxcb.so.1
libXau.so.6 => /usr/pkgsrc/20120822/lib/libXau.so.6
libXdmcp.so.6 => /usr/pkgsrc/20120822/lib/libXdmcp.so.6
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libdoor.so.1 => /lib/libdoor.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
Yet I don't see anything in the pkgsrc patches that looks suspicious. Any
ideas???
Probably unrelated: I found this in the configure output of the pkgsrc version
a little bit confusing:
checking for tclsh...
/pkgsrc/source/pkgsrc/x11/tk/work.pkgsrc-i86/.buildlink/bin/tclsh8.5
I hope this does not end up in the binary...
>How-To-Repeat:
>Fix:
Home |
Main Index |
Thread Index |
Old Index