emerge xmame Compiling src/cpu/hd6309/hd6309.c ... Compiling src/cpu/i8039/i8039.c ... Compiling src/cpu/i8085/i8085.c ... /var/tmp/portage/xmame-0.78.1/temp/cc218tsL.s: Assembler messages: /var/tmp/portage/xmame-0.78.1/temp/cc218tsL.s:4344: Error: suffix or operands invalid for `lahf' /var/tmp/portage/xmame-0.78.1/temp/cc218tsL.s:4556: Error: suffix or operands invalid for `lahf' /var/tmp/portage/xmame-0.78.1/temp/cc218tsL.s:4763: Error: suffix or operands invalid for `lahf' /var/tmp/portage/xmame-0.78.1/temp/cc218tsL.s:4980: Error: suffix or operands invalid for `lahf' make: *** [xmame.obj/cpu/i8085/i8085.o] Error 1 !!! ERROR: games-emulation/xmame-0.78.1 failed. !!! Function src_compile, Line 145, Exitcode 2 !!! emake failed (SDL) Reproducible: Always Steps to Reproduce: 1. emerge xmame 2. 3. Actual Results: error above bash-2.05b# emerge info Portage 2.0.49-r21 (default-amd64-1.4, gcc-3.3.2, glibc-2.3.3_pre20031222-r0, 2.6.1-gentoo) ================================================================= System uname: 2.6.1-gentoo x86_64 4 Gentoo Base System version 1.4.3.12 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CFLAGS="-O3 -funroll-all-loops" CHOST="x86_64-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb:/usr/kde/3.1/share/config:/usr/share/texmf/tex/generic/config/ /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/tex/platex/config/:/usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://ibiblio.org/pub/Linux/distributions/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X Xaw3d aalib acpi acpi4linux alsa amd64 apache2 apm arts avi berkdb bonobo crypt cscope cups curl dga doc dvd dvdr encode esd ethereal evo faad fam fastcgi fbcon ffmpeg flac flash foomaticdb freetds freetype gb gd gdbm ggi gif gnome gphoto2 gpm gtk gtk2 gtkhtml guile imagemagick imap imlib innodb ipv6 java jikes joystick jpeg junit kde ldap libg++ libwww mad maildir matrox mbox mcal md5sum mikmod miknod mmx motif mozilla mpeg mpi multilib mysql nas ncurses netcdf nls nvidia oci8 odbc oggvorbis opengl opie oss pam pda pdflib perl pioutils png ppds python qt quicktime readline ruby samba sasl scanner sdl slang slp spell sse ssl tcltk tcpd tetex tiff transcode truetype unicode usb videos wmf wxwindows xface xinerama xml xml2 xmms xosd xv zeo zlib video_cards_nvidia"
bash-2.05b# gcc -v Reading specs from /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.2/specs Configured with: /var/tmp/portage/gcc-3.3.2-r5/work/gcc-3.3.2/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/3.3 --includedir=/usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.2/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.3 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.3/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.3/info --enable-shared --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu --with-system-zlib --enable-languages=c,c++,f77,objc --enable-threads=posix --enable-long-long --disable-checking --enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit --enable-version-specific-runtime-libs --with-gxx-include-dir=/usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.2/include/g++-v3 --with-local-prefix=/usr/local --enable-shared --enable-nls --without-included-gettext --enable-multilib Thread model: posix gcc version 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)
Created attachment 24455 [details, diff] ebuild: separate amd64 from i386 this bug is related to bug 32628 , see that bug for discussion of this patch. this patch is an updated version that will apply cleanly to xmame-0.78.1. to link cleanly, another patch is required.
Created attachment 24457 [details, diff] fix link errors this patch was found at http://toybox.twisted.org.uk/pipermail/xmame/2004-January/005840.html and will be included in xmame-0.78.2. it is currently required to successfully link the executable on amd64 and probably on other systems as well.
i forgot to mention that this might be an overly careful fix, since the second patch is only applied to amd64. the error fixed was as follows: xmame.obj/cpu/z80/z80.o(.text+0x1308): In function `z80_init': : undefined reference to `osd_die' collect2: ld returned 1 exit status make: *** [xmame.x11] Error 1
Created attachment 24461 [details] replacement xmame-0.78.1.ebuild file
Ok, I'm not sure if the patch that Lars pointed me to did anything, but what fixed the problem I was having about was to modify the ebuild file as discussed in bug#32628. I applied the Lars referenced patch anyway, just in case. It then compiled and installed ok. I did have to adjust the permissions of the xmame binaries (they were set to 0750). I will attach the modified ebuild and patches I added to have it work on my system.
Created attachment 24463 [details, diff] patch for xmame, needed?
0.79.1 has amd64 keyword and compiled. So I'm going to close this one.