updating swig failed on looking for tcl ... emerging tcl then emerging swig worked here... this is on ppc but i would think it would be the same on all platforms Reproducible: Always Steps to Reproduce: 1. 2. 3.
swig-1.3.21 also fails if mzscheme is installed on my system, when building the runtime for differnt reasons, on both my laptop anb my desktop: LAPTOP: (cd .libs && rm -f libswigrb.la && ln -s ../libswigrb.la libswigrb.la) ../preinst-swig -mzscheme -runtime -o libmz.c swigrun.i /usr/bin/mzc ++ccf "-DSWIG_GLOBAL" --cc libmz.c standard-module-name-resolver: collection not found: "compiler" in any of: ("/root/.plt-scheme/205/collects") make[1]: *** [.libs/libswigmz.so] Error 1 make[1]: Leaving directory `/var/tmp/portage/swig-1.3.21/work/SWIG-1.3.21/Runtime' make: *** [runtime] Error 2 !!! ERROR: dev-lang/swig-1.3.21 failed. !!! Function src_compile, Line 53, Exitcode 2 !!! (no error message) DESKTOP: creating libswigphp4.la (cd .libs && rm -f libswigphp4.la && ln -s ../libswigphp4.la libswigphp4.la) ../preinst-swig -mzscheme -runtime -o libmz.c swigrun.i /usr/bin/mzc ++ccf "-DSWIG_GLOBAL" --cc libmz.c /usr/bin/mzc: line 9: /usr/local/portage/portage/mzscheme-205/image/usr/bin/mzscheme: No such file or directory /usr/bin/mzc: line 9: exec: /usr/local/portage/portage/mzscheme-205/image/usr/bin/mzscheme: cannot execute: No such file or directory make[1]: *** [.libs/libswigmz.so] Error 126 make[1]: Leaving directory `/usr/local/portage/portage/swig-1.3.21/work/SWIG-1.3.21/Runtime' make: *** [runtime] Error 2 !!! ERROR: dev-lang/swig-1.3.21 failed. !!! Function src_compile, Line 53, Exitcode 2 !!! (no error message) If I rename /usr/bin/mzc and /usr/bin/mzscheme and re-emerge then swig will install correctly.
ok after re-emerging mzscheme on my desktop I get the *same* error as on my laptop: /usr/bin/mzc ++ccf "-DSWIG_GLOBAL" --cc libmz.c standard-module-name-resolver: collection not found: "compiler" in any of: ("/root/.plt-scheme/205/collects")
merwan: please provide emerge info giggles: fixed
Created attachment 26007 [details, diff] kludge for building without tcl the --without-tcl configure option (as specified in the ebuild) doesn't work like it's supposed to and causes make runtime to try building tcl stuff when you don't want it and it's not there. this patch to the configure script should make sure that SKIP_TCL gets set right. it's just a quick kludge and will probably only work when you're neither using the tcl USE flag nor have tcl installed.
i cannot reproduce the tcl error, i unmerged tcl and merged swig, it configures fine
I had the same error emerging without tcl and tk installed with with USE="-tcltk" set. [ebuild U ] dev-lang/swig-1.3.21 [1.3.20] -guile +java +perl +python -ruby -tcltk 0 kB mkdir .libs gcc -DHAVE_CONFIG_H -I. -I. -I../Source/Include -isystem no/include -g -O2 -Wall -MT libswigtcl8_la-libtcl8.lo -MD -MP -MF .deps/libswigtcl8_la-libtcl8.Tpo -c libtcl8.c -fPIC -DPIC -o .libs/libswigtcl8_la-libtcl8.o libtcl8.c:284:17: tcl.h: No such file or directory libtcl8.c:319: error: syntax error before '*' token libtcl8.c:320: error: syntax error before '*' token libtcl8.c:321: error: syntax error before '*' token libtcl8.c:322: warning: parameter names (without types) in function declaration libtcl8.c:346: error: syntax error before "Tcl_Obj" libtcl8.c:346: warning: no semicolon at end of struct or union libtcl8.c:350: error: syntax error before "cmdtok" libtcl8.c:350: warning: type defaults to `int' in declaration of `cmdtok' libtcl8.c:350: warning: data definition has no type or storage class
Gentoo Base System version 1.4.3.12 Portage 2.0.50_pre21 (default-ppc-1.4, gcc-3.2.3, glibc-2.3.2-r9, 2.4.24-benh0) ================================================================= System uname: 2.4.24-benh0 ppc 7457, altivec supported Autoconf: sys-devel/autoconf-2.59 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="ppc ~ppc" AUTOCLEAN="yes" CFLAGS="-O2 -mcpu=7450 -maltivec -mabi=altivec -pipe" CHOST="powerpc-unknown-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/lib/pbbuttonsd /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -mcpu=7450 -maltivec -mabi=altivec -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa berkdb cups divx dvd dvdr esd foomaticdb gdbm gif gnome gpm gtk gtk2 imlib jpeg kde libwww mitshm motif mozilla nls oggvorbis opengl oss pam perl png ppc python qt readline sdl slang ssl tcpd truetype xv"
applied a fix, please test
well after removing tcl , swig does now emerge so i guess your fix works... thanks
I'm having a similar problem as giggles1 was having, except I don't have mzscheme installed. Heinrich, is there some sort of workaround I need to do? I just syncd and emerged about 3 minutes before making this post. (cd .libs && rm -f libswigrb.so.0 && ln -s libswigrb.so.0.0.0 libswigrb.so.0) (cd .libs && rm -f libswigrb.so && ln -s libswigrb.so.0.0.0 libswigrb.so) creating libswigrb.la (cd .libs && rm -f libswigrb.la && ln -s ../libswigrb.la libswigrb.la) ../preinst-swig -mzscheme -runtime -o libmz.c swigrun.i /usr/bin/mzc ++ccf "-DSWIG_GLOBAL" --cc libmz.c standard-module-name-resolver: collection not found: "compiler" in any of: ("/usr/share/mzscheme/collects") make[1]: *** [.libs/libswigmz.so] Error 1 make[1]: Leaving directory `/var/tmp/portage/swig-1.3.21/work/SWIG-1.3.21/Runtime' make: *** [runtime] Error 2 emerge info: Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.3-gentoo) ================================================================= System uname: 2.6.3-gentoo i686 AMD Athlon(tm) XP 1800+ Gentoo Base System version 1.4.3.13 Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O2 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://www.gtlib.cc.gatech.edu/pub/gentoo http://mirrors.tds.net/gentoo http://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://gentoo.seren.com/gentoo http://ftp.heanet.ie/pub/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="3dnow X aalib alsa apache2 avi berkdb bonobo cdr crypt cups dga directfb dvd encode esd fbcon foomaticdb gdbm gif glut gnome gtk gtk2 gtkhtml guile imap imlib java jpeg libg++ libwww mad maildir mikmod mmx motif mozcalendar mozilla moznocompose moznoirc mozsvg mozxmlterm mpeg ncurses nptl oggvorbis opengl pam pdflib perl plotutils png ppds python quicktime readline ruby samba scanner sdl slang spell ssl svga tcltk tcpd tetex tiff truetype usb x86 xml2 xmms xv zlib"
mzc is provided by mzscheme, it seems that you have a broken mzscheme installed, try to emerge and remove it again
No, I don't have mzscheme installed at all. Should I? Shouldn't swig depend on it then? It doesn't: DEPEND="virtual/glibc >=sys-devel/gcc-2.95.2 python? ( >=dev-lang/python-2.0 ) java? ( virtual/jdk ) ruby? ( >=dev-lang/ruby-1.6.1 ) guile? ( >=dev-util/guile-1.4 ) tcltk? ( >=dev-lang/tk-8.3 ) perl? ( >=dev-lang/perl-5.6.1 )"
mzc belongs to the mzscheme package and you have mzc installed. so it seems that you had mzscheme installed one time and it wasn't removed completly.
Actually.. # qpkg -f /usr/bin/mzc dev-lisp/plt * I installed plt to use DrScheme a while back. After re-emerging plt, swig still fails (with the same error).
i see, please rsync and test again
Thanks, it's working now.