Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 54270 - xmame 0.83.1 fails to compile on amd64 with gcc 3.4
Summary: xmame 0.83.1 fails to compile on amd64 with gcc 3.4
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-17 22:37 UTC by Andrew Williams
Modified: 2004-06-18 14:44 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Williams 2004-06-17 22:37:13 UTC
xmame 0.83.1 compiles for a while before exiting with an error at the file src/sound/fm.c. 

Reproducible: Always
Steps to Reproduce:
1. emerge -u games-emulation/xmame
2.
3.
Actual Results:  
src/sound/fm.c: In function `FM_STATUS_FLAG': 
src/sound/fm.c:853: internal compiler error: Segmentation fault 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://bugs.gentoo.org/> for instructions. 
Compiling src/sound/hc55516.c ... 
Preprocessed source stored 
into /data/port_tmp/portage/xmame-0.83.1/temp/ccZK30WV.out file, please attach 
this to your bugreport. 
make: *** [xmame.obj/sound/fm.o] Error 1 
make: *** Waiting for unfinished jobs.... 
 
!!! ERROR: games-emulation/xmame-0.83.1 failed. 
!!! Function src_compile, Line 160, Exitcode 2 
!!! emake failed (SDL) 
 
Contents of ccZK30WV.out can be found here: 
http://www.star.ucl.ac.uk/~adcw/ccZK30WV.out 
 
 

Expected Results:  
compiled 

Portage 2.0.50-r8 (gcc34-amd64-2004.1, gcc-3.4.0, glibc-2.3.4.20040605-r0, 
2.6.5-gentoo-r1) 
================================================================= 
System uname: 2.6.5-gentoo-r1 x86_64 4 
Gentoo Base System version 1.4.16 
ccache version 2.3 [enabled] 
Autoconf: sys-devel/autoconf-2.59-r4 
Automake: sys-devel/automake-1.8.5-r1 
ACCEPT_KEYWORDS="amd64 ~amd64" 
AUTOCLEAN="yes" 
CFLAGS="-O2 -march=athlon64 -mtune=athlon64 -pipe -maccumulate-outgoing-args 
-fomit-frame-pointer -fweb" 
CHOST="x86_64-pc-linux-gnu" 
COMPILER="gcc3" 
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.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/terminfo /etc/env.d" 
CXXFLAGS="-O2 -march=athlon64 -mtune=athlon64 -pipe -maccumulate-outgoing-args 
-fomit-frame-pointer -fweb" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoaddcvs ccache sandbox" 
GENTOO_MIRRORS="http://gentoo.blueyonder.co.uk 
http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo 
http://www.ibiblio.org/pub/Linux/distributions/gentoo" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/data/port_tmp" 
PORTDIR="/usr/portage" 
PORTDIR_OVERLAY="/usr/local/portage" 
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" 
USE="X aalib alsa amd64 apache2 apm arts ati avi berkdb bonobo breakme cdr 
crypt cups dga dga2 doc dvd dvdr encode esd foomaticdb gdbm ggi gif gimpprint 
gnome gnome2 gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile imap imlib jpeg kde 
ldap libg++ libwww maildir mikmod motif mozilla mpeg nas ncurses nls oggvorbis 
opengl oss pam pdflib perl png python qt quicktime radeon readline sdl slang 
spell ssl tcltk tcpd tetex theora truetype unicode v4l v4l2 wmf xml xml2 xmms 
xv xvid zlib"
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2004-06-17 22:46:30 UTC
src/sound/fm.c:853: internal compiler error: Segmentation fault

Smells like bad hardware to me.  Does this box pass overnight memtest86?
Comment 2 Andrew Williams 2004-06-17 23:43:13 UTC
I thought memtest86 was only for the x86. Certainly it causes my machine to reboot instantly. Everything else works fine.
Comment 3 Mr. Bones. (RETIRED) gentoo-dev 2004-06-18 00:06:08 UTC
memtest86-3.0-r1.ebuild claims to be stable on amd64.  Please try it out.
Comment 4 Andrew Williams 2004-06-18 08:11:52 UTC
From the memtest86 Changelog:

  18 Jun 2004; Jeremy Huddleston <eradicator@gentoo.org>
  memtest86-3.0-r1.ebuild:
  This contains 32bit x86 assembly and won't work on amd64.

I seriously doubt it's a hardware problem as 0.82.1 compiles and I have no problem compiling any other software on my machine, and it's extremely stable.
Comment 5 Andrew Williams 2004-06-18 14:22:27 UTC
Okay, I think I've solved the problem. Looking at the top level Makefile shows a line:

CFLAGS=-O2 -march=athlon64 -mtune=athlon64 -pipe -maccumulate-outgoing-args -fomit-frame-pointer -fweb -Wno-unused -fomit-frame-pointer -fstrict-aliasing -fstrength-reduce -ffast-math -falign-functions=2 -falign-jumps=2 -falign-loops=2 -O -Wall -Wno-unused

If I remove -ffast-math it appears to compile correctly. I've noticed that another program that uses the -ffast-math option, xephem-3.6, also segfaults. This also compiles correctly when I remove -ffast-math, so maybe it's a compiler bug. I'm using gcc-3.4.0-r6.
Comment 6 Mr. Bones. (RETIRED) gentoo-dev 2004-06-18 14:44:39 UTC
Nice work.  Thanks for tracking it down.  I've taken out the -fast-math stuff
for amd64 in the ebuild.  No rev bump since it's such a beast to compile (at least for everyone except amd64).