Compiling dev-tcltk/tclxml-3.0 with expat use flag enabled and without a prior version of tclxml, dies with an error: [ebuild N ] dev-tcltk/tclxml-3.0 USE="expat -threads -xml2" 0 kB >>> checksums files ;-) tclxml-3.0.ebuild >>> checksums files ;-) files/digest-tclxml-3.0 >>> checksums files ;-) files/bash-3.1_compat.patch >>> checksums src_uri ;-) tclxml-3.0.tar.gz >>> Unpacking source... >>> Unpacking tclxml-3.0.tar.gz to /var/tmp/portage/tclxml-3.0/work >>> Source unpacked. >>> Compiling source in /var/tmp/portage/tclxml-3.0/work/tclxml-3.0 ... * Applying bash-3.1_compat.patch ... [ ok ]./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu creating cache ./config.cache checking for correct TEA configuration... ok checking for Tcl configuration... found /usr/lib/tclConfig.sh checking for existence of /usr/lib/tclConfig.sh... loading checking for Cygwin environment... no checking for mingw32 environment... no checking how to run the C preprocessor... cc -E checking for gcc... gcc checking whether the C compiler (gcc -march=athlon64 -O3 -pipe -msse3 ) works... yes checking whether the C compiler (gcc -march=athlon64 -O3 -pipe -msse3 ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking if the compiler understands -pipe... yes checking for a BSD compatible install... /bin/install -c checking whether make sets ${MAKE}... yes checking for ranlib... ranlib checking for object suffix... o checking for executable suffix... no checking for required early compiler flags... _LARGEFILE64_SOURCE checking for 64-bit integer type... using long checking dirent.h... yes checking for errno.h... yes checking for float.h... yes checking for values.h... yes checking for limits.h... yes checking for stdlib.h... yes checking for string.h... yes checking for sys/wait.h... yes checking for dlfcn.h... yes checking for unistd.h... yes checking for sys/param.h... yes checking for strtod... yes checking for Solaris2.4/Tru64 strtod bugs... ok checking for Tcl public headers... /usr/include checking for Tcl private include files... Using srcdir found in tclConfig.sh: /usr/lib64/tcl8.4/include checking for building with threads... no (default) checking how to build libraries... shared checking if 64bit support is enabled... no checking if 64bit Sparc VIS support is requested... no checking system version (for dynamic loading)... Linux-2.6.15-gentoo-r3 checking for dlopen in -ldl... yes checking for ar... ar checking for build with symbols... no checking for tclsh... /usr/lib/../bin/tclsh8.4 updating cache ./config.cache creating ./config.status creating Makefile creating library/pkgIndex.tcl creating TclxmlConfig.sh gcc -pipe -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -DVERSION=\"3.0\" -DTCLXML_VERSION=\"3.0\" -D_LARGEFILE64_SOURCE=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TCL_STUBS=1 -I/usr/lib64/tcl8.4/include/generic -I/usr/lib64/tcl8.4/include/unix -I./include -march=athlon64 -O3 -pipe -msse3 -O -D__NO_STRING_INLINES -D__NO_MATH_INLINES -fPIC -c `echo tclxml.c` -o tclxml.o gcc -pipe -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -DVERSION=\"3.0\" -DTCLXML_VERSION=\"3.0\" -D_LARGEFILE64_SOURCE=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TCL_STUBS=1 -I/usr/lib64/tcl8.4/include/generic -I/usr/lib64/tcl8.4/include/unix -I./include -march=athlon64 -O3 -pipe -msse3 -O -D__NO_STRING_INLINES -D__NO_MATH_INLINES -fPIC -c `echo tclxmlStubInit.c` -o tclxmlStubInit.o gcc -pipe -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -DVERSION=\"3.0\" -DTCLXML_VERSION=\"3.0\" -D_LARGEFILE64_SOURCE=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TCL_STUBS=1 -I/usr/lib64/tcl8.4/include/generic -I/usr/lib64/tcl8.4/include/unix -I./include -march=athlon64 -O3 -pipe -msse3 -O -D__NO_STRING_INLINES -D__NO_MATH_INLINES -fPIC -c `echo tclxmlStubLib.c` -o tclxmlStubLib.o rm -f libTclxml3.0.so gcc -pipe -shared -o libTclxml3.0.so tclxml.o tclxmlStubInit.o tclxmlStubLib.o -L/usr/lib64 -ltclstub8.4 : libTclxml3.0.so rm -f libTclxmlstub3.0.a ar cr libTclxmlstub3.0.a tclxmlStubLib.o ranlib libTclxmlstub3.0.a ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-Tclxml=.. --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu creating cache ./config.cache checking for correct TEA configuration... ok checking for Tcl configuration... found /usr/lib/tclConfig.sh checking for existence of /usr/lib/tclConfig.sh... loading checking for Cygwin environment... no checking for mingw32 environment... no checking how to run the C preprocessor... cc -E checking for gcc... gcc checking whether the C compiler (gcc -march=athlon64 -O3 -pipe -msse3 ) works... yes checking whether the C compiler (gcc -march=athlon64 -O3 -pipe -msse3 ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking if the compiler understands -pipe... yes checking for a BSD compatible install... /bin/install -c checking whether make sets ${MAKE}... yes checking for ranlib... ranlib checking for object suffix... o checking for executable suffix... no checking for required early compiler flags... _LARGEFILE64_SOURCE checking for 64-bit integer type... using long checking dirent.h... yes checking for errno.h... yes checking for float.h... yes checking for values.h... yes checking for limits.h... yes checking for stdlib.h... yes checking for string.h... yes checking for sys/wait.h... yes checking for dlfcn.h... yes checking for unistd.h... yes checking for sys/param.h... yes checking for strtod... yes checking for Solaris2.4/Tru64 strtod bugs... ok checking for Tclxml configuration... found /var/tmp/portage/tclxml-3.0/work/tclxml-3.0/TclxmlConfig.sh checking for existence of /var/tmp/portage/tclxml-3.0/work/tclxml-3.0/TclxmlConfig.sh... loading configure: warning: Found Makefile - using build library specs for Tclxml checking for Tcl public headers... /usr/include checking for building with threads... no (default) checking how to build libraries... shared checking if 64bit support is enabled... no checking if 64bit Sparc VIS support is requested... no checking system version (for dynamic loading)... Linux-2.6.15-gentoo-r3 checking for dlopen in -ldl... yes checking for ar... ar checking for build with symbols... no checking for tclsh... /usr/lib/../bin/tclsh8.4 updating cache ./config.cache creating ./config.status creating Makefile gcc -pipe -DPEEK_XCLOSEIM=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_TMPNAM=1 -DHAVE_WAITPID=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_ST_BLKSIZE=1 -DSTDC_HEADERS=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -DVERSION=\"3.0\" -DTCLEXPAT_VERSION=\"3.0\" -D_LARGEFILE64_SOURCE=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_TCL_STUBS=1 -DUSE_TCLXML_STUBS=1 -DXML_DTD=1 -DXML_NS=1 -I"/usr/include" -I./xmltok -I./xmlparse -I./xmlwf -march=athlon64 -O3 -pipe -msse3 -O -D__NO_STRING_INLINES -D__NO_MATH_INLINES -fPIC -c `echo ./../tclexpat.c` -o tclexpat.o ./../tclexpat.c:16:27: tclxml/tclxml.h: No such file or directory ./../tclexpat.c:30: error: syntax error before "TclXML_Info" ./../tclexpat.c:30: warning: no semicolon at end of struct or union ./../tclexpat.c:32: warning: data definition has no type or storage class ./../tclexpat.c:38: error: syntax error before "TclXML_Info" ./../tclexpat.c: In function `Tclexpat_Init': ./../tclexpat.c:142: error: `TclXML_ParserClassInfo' undeclared (first use in this function) ./../tclexpat.c:142: error: (Each undeclared identifier is reported only once ./../tclexpat.c:142: error: for each function it appears in.) ./../tclexpat.c:142: error: `classinfo' undeclared (first use in this function) ./../tclexpat.c:150: error: `TCLXML_VERSION' undeclared (first use in this function) ./../tclexpat.c:150: warning: comparison between pointer and integer ./../tclexpat.c:155: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatCreate': ./../tclexpat.c:203: error: syntax error before "TclXML_Info" ./../tclexpat.c:205: error: `expat' undeclared (first use in this function) ./../tclexpat.c:211: error: syntax error before ')' token ./../tclexpat.c:244: warning: cast to pointer from integer of different size ./../tclexpat.c: In function `TclExpatCreateEntityParser': ./../tclexpat.c:297: error: `parent' undeclared (first use in this function) ./../tclexpat.c:297: error: syntax error before ')' token ./../tclexpat.c:298: error: `expat' undeclared (first use in this function) ./../tclexpat.c:300: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatDelete': ./../tclexpat.c:339: error: `expat' undeclared (first use in this function) ./../tclexpat.c:339: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatParse': ./../tclexpat.c:369: error: `expat' undeclared (first use in this function) ./../tclexpat.c:369: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatConfigure': ./../tclexpat.c:414: error: `expat' undeclared (first use in this function) ./../tclexpat.c:414: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatGet': ./../tclexpat.c:520: error: `expat' undeclared (first use in this function) ./../tclexpat.c:520: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatElementStartHandler': ./../tclexpat.c:614: error: `expat' undeclared (first use in this function) ./../tclexpat.c:614: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatElementEndHandler': ./../tclexpat.c:644: error: `expat' undeclared (first use in this function) ./../tclexpat.c:644: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatCharacterDataHandler': ./../tclexpat.c:658: error: `expat' undeclared (first use in this function) ./../tclexpat.c:658: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatProcessingInstructionHandler': ./../tclexpat.c:672: error: `expat' undeclared (first use in this function) ./../tclexpat.c:672: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatDefaultHandler': ./../tclexpat.c:689: error: `expat' undeclared (first use in this function) ./../tclexpat.c:689: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatUnparsedDeclHandler': ./../tclexpat.c:706: error: `expat' undeclared (first use in this function) ./../tclexpat.c:706: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatNotationDeclHandler': ./../tclexpat.c:738: error: `expat' undeclared (first use in this function) ./../tclexpat.c:738: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatCommentHandler': ./../tclexpat.c:764: error: `expat' undeclared (first use in this function) ./../tclexpat.c:764: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatNotStandaloneHandler': ./../tclexpat.c:776: error: `expat' undeclared (first use in this function) ./../tclexpat.c:776: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatStartCdataSectionHandler': ./../tclexpat.c:784: error: `expat' undeclared (first use in this function) ./../tclexpat.c:784: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatEndCdataSectionHandler': ./../tclexpat.c:795: error: `expat' undeclared (first use in this function) ./../tclexpat.c:795: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatExternalEntityRefHandler': ./../tclexpat.c:826: error: `expat' undeclared (first use in this function) ./../tclexpat.c:826: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatElementDeclHandler': ./../tclexpat.c:892: error: `expat' undeclared (first use in this function) ./../tclexpat.c:892: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatAttlistDeclHandler': ./../tclexpat.c:918: error: `expat' undeclared (first use in this function) ./../tclexpat.c:918: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatStartDoctypeDeclHandler': ./../tclexpat.c:945: error: `expat' undeclared (first use in this function) ./../tclexpat.c:945: error: syntax error before ')' token ./../tclexpat.c: In function `TclExpatEndDoctypeDeclHandler': ./../tclexpat.c:957: error: `expat' undeclared (first use in this function) ./../tclexpat.c:957: error: syntax error before ')' token make: *** [tclexpat.o] Error 1 Portage 2.1_pre4-r1 (default-linux/amd64/2005.1, gcc-3.4.5, glibc-2.3.6-r3, 2.6.15-gentoo-r3 x86_64) ================================================================= System uname: 2.6.15-gentoo-r3 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System version 1.12.0_pre16 dev-lang/python: 2.3.5-r2, 2.4.2-r1 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1-r1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O3 -pipe -msse3" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-march=athlon64 -O3 -pipe -msse3" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.ngi.it" LC_ALL="it_IT.utf8" LINGUAS="it" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://neptune.octopus/gentoo-portage" USE="amd64 X acpi alsa avi berkdb bitmap-fonts cairo cpudetection crypt cups dbus doc dvd dvdr dvdread emacs emboss encode firefox foomaticdb fortran gif gimp gimpprint glitz gnome gpm gstreamer gtk gtk2 imlib ipv6 jpeg lzw lzw-tiff mad mp3 mpeg nautilus ncurses nls nptl nptlonly oggvorbis opengl pam pdflib perl png ppds python quicktime readline sdl spell sse3 ssl tcpd tetex tiff truetype truetype-fonts type1-fonts unicode usb userlocales v4l2 vorbis xinerama xpm xv zlib elibc_glibc kernel_linux linguas_it userland_GNU" Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LDFLAGS
It fails beacause during the compilation of the expat wrapper, it cannot find tclxml/tclxml.h. A dirty workaround is emerging tclxml first with USE="-expat", then with USE="expat".
(In reply to comment #1) > It fails beacause during the compilation of the expat wrapper, it cannot find > tclxml/tclxml.h. > A dirty workaround is emerging tclxml first with USE="-expat", then with > USE="expat". > Though that is a simply workaround, it works here.
fixed, in cvs, thanks:)