Subject: Ruby-tcltklib && tcl > tcl83 (others too ?)
To: None <tech-pkg@netbsd.org>
From: Martin S. Weber <Ephaeton@gmx.net>
List: tech-pkg
Date: 07/08/2004 00:30:56
hoi pkg wiz's,
I've a little problem building ruby-tcltklib, which is basically because of
tcl83/tcl84 interaction problems.
from the Makefile:
(...)
# Ruby can work with tcl 8.4 but can't coexist with thread library.
# Since tcl-8.4.6nb1 enabled linking with thread library, ruby couldn't
# use it any more.
DEPENDS+= tcl>=8.3:../../lang/tcl83
DEPENDS+= tk>=8.3:../../x11/tk83
(...)
I have installed:
$ pkg_info -qe 'tcl>=8.3' && pkg_info 'tk>=8.3' && echo sure!
sure!
$ pkg_info -c tcl tk
Information for tcl-8.4.6nb5:
Comment:
Ousterhout's Tool Command Language, a scripting language
Information for tk-8.4.6nb3:
Comment:
Graphical toolkit for TCL
Obviously the DEPENDS is satisfied by tcl & tk of the wrong versions.
Now if no tcl / tk was installed, I suppose it'd pull in the right
versions (tcl83 / tk83), but as tcl/tk 84 is installed already, it
wouldn't bother ? Shouldn't those two '>='s be '==' ? (assuming that
== disregards _nbX)
I assume everything will be fine with tcl83/tk83 installed (doing that
now and continuing). Yet I suppose tcl83/tk83 should be pulled in
automatically.
The real build error is that linking against -ltcl83 fails (none installed).
================================================================================
Build log:
===> Building for ruby-tcltklib-1.6.8nb4
make: cannot open Makefile.
make: stopped in /usr/obj/pkg/x11/ruby-tcltklib/work/ruby-1.6.8/ext/tcltklib
*** Error code 2
...
Build log with PKG_DEBUG_LEVEL=2:
+ cd /usr/obj/pkg/x11/ruby-tcltklib/work/ruby-1.6.8/ext/tcltklib
+ /usr/bin/env USETOOLS=no MAKECONF=/dev/null USETOOLS=no OBJECT_FMT=ELF LDFLAGS= -Wl,-R/usr/pkg/lib
-L/usr/pkg/lib RPATH_FLAG=-R WHOLE_ARCHIVE_FLAG=-Wl,--whole-archive NO_WHOLE_ARCHIVE_FLAG=-Wl,--no-
whole-archive LINK_ALL_LIBGCC_HACK= PATH=/usr/obj/pkg/x11/ruby-tcltklib/work/.tools/bin:/usr/obj/pkg
/x11/ruby-tcltklib/work/.gcc/bin:/usr/pkg/bin:/usr/bin:/bin:/root/bin:/usr/local/bin:/sbin:/usr/sbin
:/usr/pkg/sbin:/usr/local/sbin:/usr/X11R6/bin:/usr/games:/usr/pkg/java/kaffe/bin:/usr/pkg/bin:/usr/X
11R6/bin PREFIX=/usr/pkg LOCALBASE=/usr/pkg X11BASE=/usr/X11R6 CFLAGS=-O2 -mcpu=v9 -pipe CPPFLAGS=
FFLAGS=-O X11PREFIX=/usr/pkg CC=gcc CXX=g++ CPP=cpp PTHREAD_CFLAGS= PTHREAD_LDFLAGS= BSD_INSTALL_PRO
GRAM=install -c -s -o root -g wheel -m 555 BSD_INSTALL_SCRIPT=install -c -o root -g wheel -m 555 BSD
_INSTALL_LIB=install -c -o root -g wheel -m 555 BSD_INSTALL_DATA=install -c -o root -g wheel -m 444
BSD_INSTALL_MAN=install -c -o root -g wheel -m 444 BSD_INSTALL=install BSD_INSTALL_PROGRAM_DIR=insta
ll -d -o root -g wheel -m 755 BSD_INSTALL_SCRIPT_DIR=install -d -o root -g wheel -m 755 BSD_INSTALL_
LIB_DIR=install -d -o root -g wheel -m 755 BSD_INSTALL_DATA_DIR=install -d -o root -g wheel -m 755 B
SD_INSTALL_MAN_DIR=install -d -o root -g wheel -m 755 BSD_INSTALL_GAME=install -c -s -o root -g whee
l -m 555 PKG_SYSCONFDIR=/usr/pkg/etc INSTALL_INFO=/usr/obj/pkg/x11/ruby-tcltklib/work/.tools/bin/ins
tall-info MAKEINFO=/usr/obj/pkg/x11/ruby-tcltklib/work/.tools/bin/makeinfo VIEWBASE=/usr/pkg /usr/bi
n/make CCOPTIONS=-mcpu=v9 -f Makefile all
make: cannot open Makefile.
make: stopped in /usr/obj/pkg/x11/ruby-tcltklib/work/ruby-1.6.8/ext/tcltklib
*** Error code 2
contents of /usr/obj/pkg/x11/ruby-tcltklib/work/ruby-1.6.8/ext/tcltklib:
MANIFEST README.euc depend lib/ sample/ tcltklib.c
MANUAL.euc demo/ extconf.rb mkmf.log stubs.c
mkmf.log:
(...)
# 2 "conftest.c" 2
gcc -o conftest -I/usr/pkg/lib/ruby/1.6/sparc64-netbsd -O2 -mcpu=v9 -pipe -I/usr/include -fPIC -pipe
-I/usr/pkg/include -I/usr/pkg/include/tk8.3 -I/usr/pkg/include/tcl8.3 -I/usr/X11R6/include -Wl,-e
xport-dynamic -L/usr/pkg/lib -L/usr/pkg/lib/tk8.3 -L/usr/pkg/lib/tcl8.3 -L/usr/X11R6/lib conftest.c
-lX11 -lc -lcrypt -lm
gcc -o conftest -I/usr/pkg/lib/ruby/1.6/sparc64-netbsd -O2 -mcpu=v9 -pipe -I/usr/include -fPIC -pipe
-I/usr/pkg/include -I/usr/pkg/include/tk8.3 -I/usr/pkg/include/tcl8.3 -I/usr/X11R6/include -Wl,-e
xport-dynamic -L/usr/pkg/lib -L/usr/pkg/lib/tk8.3 -L/usr/pkg/lib/tcl8.3 -L/usr/X11R6/lib conftest.c
-ltcl83 -lX11 -lc -lcrypt -lm
ld: cannot find -ltcl83
gcc -o conftest -I/usr/pkg/lib/ruby/1.6/sparc64-netbsd -O2 -mcpu=v9 -pipe -I/usr/include -fPIC -pipe
-I/usr/pkg/include -I/usr/pkg/include/tk8.3 -I/usr/pkg/include/tcl8.3 -I/usr/X11R6/include -Wl,-e
xport-dynamic -L/usr/pkg/lib -L/usr/pkg/lib/tk8.3 -L/usr/pkg/lib/tcl8.3 -L/usr/X11R6/lib -L/usr/loc
al/lib conftest.c -ltcl83 -lX11 -lc -lcrypt -lm
ld: cannot find -ltcl83
gcc -o conftest -I/usr/pkg/lib/ruby/1.6/sparc64-netbsd -O2 -mcpu=v9 -pipe -I/usr/include -fPIC -pipe
-I/usr/pkg/include -I/usr/pkg/include/tk8.3 -I/usr/pkg/include/tcl8.3 -I/usr/X11R6/include -Wl,-e
xport-dynamic -L/usr/pkg/lib -L/usr/pkg/lib/tk8.3 -L/usr/pkg/lib/tcl8.3 -L/usr/X11R6/lib conftest.c
-ltcl83 -lX11 -lc -lcrypt -lm
ld: cannot find -ltcl83
gcc -o conftest -I/usr/pkg/lib/ruby/1.6/sparc64-netbsd -O2 -mcpu=v9 -pipe -I/usr/include -fPIC -pipe
-I/usr/pkg/include -I/usr/pkg/include/tk8.3 -I/usr/pkg/include/tcl8.3 -I/usr/X11R6/include -Wl,-e
xport-dynamic -L/usr/pkg/lib -L/usr/pkg/lib/tk8.3 -L/usr/pkg/lib/tcl8.3 -L/usr/X11R6/lib -L/usr/lib
conftest.c -ltcl83 -lX11 -lc -lcrypt -lm
ld: cannot find -ltcl83
================================================================================
Regards,
-Martin