when trying to emerge clustalx compilation fails: ------------- >> emerge (1 of 1) sci-biology/clustalx-1.83 to / >>> md5 src_uri ;-) clustalx1.83.sun.tar.gz >>> Unpacking source... >>> Unpacking clustalx1.83.sun.tar.gz to /var/tmp/portage/clustalx-1.83/work >>> Source unpacked. i686-pc-linux-gnu-gcc -c -O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow interface.c cc1: error: invalid option `3dnow3' make: *** [interface.o] Error 1 ------------ flags (see also output of "emerge info"): CFLAGS="-O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow" CHOST="i686-pc-linux-gnu" CXXFLAGS="${CFLAGS}" MAKEOPTS="-j2" USE="gtk gtk2 qt kde gnome cups dvd dvdr cdr X alsa ftp gnustep ipv6 jabber ncurses python quicktime avi divx4linux" ----------- it seems to me the makefile contains a spurious "3dnow3" option that is of course not recognized by gcc. package is NOT masked. Reproducible: Always Steps to Reproduce: 1.emerge clustalx 2. 3. Actual Results: emerge aborts Expected Results: clustalx should have been compiled and installed Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.3.5, glibc-2.3.4.20040808-r1, 2.6.9-gentoo-r9 i686) ================================================================= System uname: 2.6.9-gentoo-r9 i686 AMD Duron(tm) Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4 [2.3.4 (#1, Dec 12 2004, 12:56:49)] dev-lang/python: 2.3.4 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.4.21-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /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/terminfo /etc/env.d" CXXFLAGS="-O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X alsa apm arts avi berkdb bitmap-fonts cdr crypt cups divx4linux dvd dvdr encode esd f77 fam flac font-server foomaticdb fortran ftp gdbm gif gnome gnustep gpm gtk gtk2 imagemagick imlib ipv6 jabber jack jpeg kde libg++ libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl spell ssl svga tcpd tetex tiff truetype truetype-fonts type1-fonts xml xml2 xmms xv zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY
The Makefile does not contain the "3dnow" (or "3dnow3") option. Please try removing this option from your "CFLAGS" variable and try again.
Emerging without the "3dnow" flag works. But "3dnow" is a legit (and fairly common) CFLAG: it is "3dnow3" that it is not. The configure script has some bug that messes up the generated makefile. This is the relevant makefile section: CC = i686-pc-linux-gnu-gcc CFLAGS = -c -O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow LFLAGS = -lm -O3 -pipe -march=athlon-xp -fomit-frame-pointer -mmmx -msse -m3dnow CXFLAGS = -DWIN_MOTIF -I/usr/include/ncbi LXFLAGS = -L/usr/lib -L/usr/X11R6/lib -lvibrant -lncbi -lXm -lXmu -lXpm -lXt -lX11 -lm You see the CFLAGS have both the correct -m3dnow option and the wrong -m3dnow3 option.
There is no configure script in the package. The makefile is simply corrected (using "sed") to replace the default "CFLAGS" by yours. I was able to compile "clustalx" using your "CFLAGS" without problem, so I have no idea what could be causing your problem. I changed the way the replacement is done, just in case. Can you check if it works now?
Ok, now it works flawlessly. Thanks a lot. :)