Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 122290 - games-fps/duke3d fails (gcc4)
Summary: games-fps/duke3d fails (gcc4)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on: 134693
Blocks: 117482
  Show dependency tree
 
Reported: 2006-02-09 11:41 UTC by Patrizio Bassi
Modified: 2006-08-30 05:02 UTC (History)
2 users (show)

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


Attachments
patch to use extern instead of alias (patch-gcc-4-alias,8.13 KB, text/plain)
2006-06-22 02:48 UTC, E. Scaglione
Details
small typo corrected (20040817-gcc4-alias.patch,8.12 KB, text/plain)
2006-06-22 03:20 UTC, E. Scaglione
Details
duke3d-overlay.tar.bz2 (duke3d-overlay.tar.bz2,12.04 KB, application/octet-stream)
2006-06-22 03:24 UTC, E. Scaglione
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Patrizio Bassi 2006-02-09 11:41:08 UTC
gcc -c -o engine.o engine.c -O2 -mtune=pentium3 -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -ffast-math -DUSE_OPENGL -I/usr/X11R6/include -DUSE_PERL -DUDP_NETWORKING=1 -DUSE_I386_ASM -funsigned-char  -DPLATFORM_UNIX -Wall -I/usr/include/SDL -D_REENTRANT -fno-omit-frame-pointer
engine.c: In function ‘loadboard’:
engine.c:2970: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2971: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2972: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2973: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2976: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2977: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2978: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2979: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2980: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2981: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:2998: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3017: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3018: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3019: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3020: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3021: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3022: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3023: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c:3024: warning: pointer targets in passing argument 2 of ‘kread8’ differ in signedness
engine.c: In function ‘loadpalette’:
engine.c:3291: warning: dereferencing type-punned pointer will break strict-aliasing rules
engine.c:3293: warning: dereferencing type-punned pointer will break strict-aliasing rules
engine.c: At top level:
a.h:119: error: ‘asm_mmxoverlay’ aliased to undefined symbol ‘_asm_mmxoverlay’
a.h:120: error: ‘asm_sethlinesizes’ aliased to undefined symbol ‘_asm_sethlinesizes’
a.h:121: error: ‘asm_setpalookupaddress’ aliased to undefined symbol ‘_asm_setpalookupaddress’
a.h:122: error: ‘asm_setuphlineasm4’ aliased to undefined symbol ‘_asm_setuphlineasm4’
a.h:123: error: ‘asm_hlineasm4’ aliased to undefined symbol ‘_asm_hlineasm4’
a.h:124: error: ‘asm_setuprhlineasm4’ aliased to undefined symbol ‘_asm_setuprhlineasm4’
a.h:125: error: ‘asm_rhlineasm4’ aliased to undefined symbol ‘_asm_rhlineasm4’
a.h:126: error: ‘asm_setuprmhlineasm4’ aliased to undefined symbol ‘_asm_setuprmhlineasm4’
a.h:127: error: ‘asm_rmhlineasm4’ aliased to undefined symbol ‘_asm_rmhlineasm4’
a.h:128: error: ‘asm_setupqrhlineasm4’ aliased to undefined symbol ‘_asm_setupqrhlineasm4’
a.h:129: error: ‘asm_qrhlineasm4’ aliased to undefined symbol ‘_asm_qrhlineasm4’
a.h:130: error: ‘asm_setvlinebpl’ aliased to undefined symbol ‘_asm_setvlinebpl’
a.h:131: error: ‘asm_fixtransluscence’ aliased to undefined symbol ‘_asm_fixtransluscence’
a.h:132: error: ‘asm_prevlineasm1’ aliased to undefined symbol ‘_asm_prevlineasm1’
a.h:133: error: ‘asm_vlineasm1’ aliased to undefined symbol ‘_asm_vlineasm1’
a.h:134: error: ‘asm_setuptvlineasm’ aliased to undefined symbol ‘_asm_setuptvlineasm’
a.h:135: error: ‘asm_tvlineasm1’ aliased to undefined symbol ‘_asm_tvlineasm1’
a.h:136: error: ‘asm_setuptvlineasm2’ aliased to undefined symbol ‘_asm_setuptvlineasm2’
a.h:137: error: ‘asm_tvlineasm2’ aliased to undefined symbol ‘_asm_tvlineasm2’
a.h:138: error: ‘asm_mvlineasm1’ aliased to undefined symbol ‘_asm_mvlineasm1’
a.h:139: error: ‘asm_setupvlineasm’ aliased to undefined symbol ‘_asm_setupvlineasm’
a.h:140: error: ‘asm_vlineasm4’ aliased to undefined symbol ‘_asm_vlineasm4’
a.h:141: error: ‘asm_setupmvlineasm’ aliased to undefined symbol ‘_asm_setupmvlineasm’
a.h:142: error: ‘asm_mvlineasm4’ aliased to undefined symbol ‘_asm_mvlineasm4’
a.h:143: error: ‘asm_setupspritevline’ aliased to undefined symbol ‘_asm_setupspritevline’
a.h:144: error: ‘asm_spritevline’ aliased to undefined symbol ‘_asm_spritevline’
a.h:145: error: ‘asm_msetupspritevline’ aliased to undefined symbol ‘_asm_msetupspritevline’
a.h:146: error: ‘asm_mspritevline’ aliased to undefined symbol ‘_asm_mspritevline’
a.h:147: error: ‘asm_tsetupspritevline’ aliased to undefined symbol ‘_asm_tsetupspritevline’
a.h:148: error: ‘asm_tspritevline’ aliased to undefined symbol ‘_asm_tspritevline’
a.h:149: error: ‘asm_mhline’ aliased to undefined symbol ‘_asm_mhline’
a.h:150: error: ‘asm_mhlineskipmodify’ aliased to undefined symbol ‘_asm_mhlineskipmodify’
a.h:151: error: ‘asm_msethlineshift’ aliased to undefined symbol ‘_asm_msethlineshift’
a.h:152: error: ‘asm_thline’ aliased to undefined symbol ‘_asm_thline’
a.h:153: error: ‘asm_thlineskipmodify’ aliased to undefined symbol ‘_asm_thlineskipmodify’
a.h:154: error: ‘asm_tsethlineshift’ aliased to undefined symbol ‘_asm_tsethlineshift’
a.h:155: error: ‘asm_setupslopevlin’ aliased to undefined symbol ‘_asm_setupslopevlin’
a.h:156: error: ‘asm_slopevlin’ aliased to undefined symbol ‘_asm_slopevlin’
a.h:157: error: ‘asm_settransnormal’ aliased to undefined symbol ‘_asm_settransnormal’
a.h:158: error: ‘asm_settransreverse’ aliased to undefined symbol ‘_asm_settransreverse’
a.h:159: error: ‘asm_setupdrawslab’ aliased to undefined symbol ‘_asm_setupdrawslab’
a.h:160: error: ‘asm_drawslab’ aliased to undefined symbol ‘_asm_drawslab’
a.h:161: error: ‘asm_stretchhline’ aliased to undefined symbol ‘_asm_stretchhline’
a.h:162: error: ‘asm_isvmwarerunning’ aliased to undefined symbol ‘_asm_isvmwarerunning’
a.h:168: error: ‘asm_prohlineasm4’ aliased to undefined symbol ‘_asm_prohlineasm4’
make: *** [engine.o] Error 1
make: Leaving directory `/var/tmp/portage/duke3d-20040817/work/duke3d/source/buildengine'

!!! ERROR: games-fps/duke3d-20040817 failed.
Call stack:
  ebuild.sh, line 1894:   Called dyn_compile
  ebuild.sh, line 941:   Called src_compile

!!! buildengine failed
!!! If you need support, post the topmost build error, and the call stack if relevant.








emerge info
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Portage 2.1_pre4-r1 (default-linux/x86/2005.1, gcc-4.0.2, glibc-2.3.6-r5, 2.6.16-rc2-git1 i686)
=================================================================
System uname: 2.6.16-rc2-git1 i686 Pentium III (Katmai)
Gentoo Base System version 1.12.0_pre15
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [disabled]
dev-lang/python:     2.4.2
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.91.0.5-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -mtune=pentium3 -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -ffast-math"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/mail/dspam /opt/openjms/config /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/bind /var/qmail/control /var/run/dspam"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O3 -mtune=pentium3 -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -ffast-math"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks fixpackages sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.ngi.it http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/"
LANG="it_IT.utf8"
LC_ALL="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--enable-new-dtags -Wl,-Bdirect -Wl,--as-needed -Wl,-hashvals -Wl,-zdynsort"
LINGUAS="it"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 X X509 Xaw3d a52 aac aalib accessibility acl acpi activefilter adns alsa apache2 apm arts asf audiofile avi bash-completion berkdb bidi bitmap-fonts bootsplash browserplugin bzip2 cairo caps cdda cddb cdio cdparanoia cdr cgi chroot clamav cli client codecs crypt css cups curl dba dbus dga dhcp directfb djbfft dri edl eds emboss encode ethereal exif expat extraengine faac faad fam fbcon ffmpeg fftw firefox flac flash foomaticdb foreign-package fortran gcj gd gdbm geometry ggi gif gimp gimpprint glut glx gnokii gnome gphoto2 gpm graphviz gs gstreamer gtk gtk2 gtkhtml guile h264 hal iconv idea idn imagemagick imap imlib innodb ipod irda irmc jack java javascript jikes jit joystick jpeg jpeg2k junit justify kde kdeenablefinal kerberos kqemu lame lcd lcms ldap libcaca libclamav libg++ libgda libusb libwww lirc live lm_sensors lua lzo mad mailwrapper matroska md5sum mdb mikmod mime mmx mmx2 mmxext mng mono motif mozcalendar mozdevelop mozilla mozsvg mozxmlterm mp3 mp4live mpeg mpeg2 mpeg4 mplayer mysql mysqli mythtv nagios-dns nagios-ntp nagios-ping nagios-ssh ncurses neXt network ngui nls nntp no_wxgtk1 nobsh nopie nossp noxalan nptl nptlonly nsplugin oav odbc ogg oggvorbis openal opengl operanom2 oss pam pcre pda pdf pdflib pdo pear perl php png pnp postgres ppds pthreads python qemu-fast qhull qt quicktime quotas readline real rrdtool rtc ruby samba scanner sdl server session sftplogging sguil slang slp snortsam soap sockets socks5 softmmu softquota spamassassin speex spell sqlite3 sse ssl subject-rewrite svg svga tcltk tcpd tetex tga theora tiff tokenizer truetype truetype-fonts trusted type1-fonts unicode usb userlocales vidix vorbis win32codecs wmf wsconvert wxwindows x264 xanim xchatdccserver xchattext xine xinerama xml xml2 xmlrpc xmms xosd xpm xprint xsl xv xvid xvm xvmc zlib elibc_glibc kernel_linux linguas_it userland_GNU"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, MAKEOPTS
Comment 1 Tony Vroon (RETIRED) gentoo-dev 2006-03-05 05:39:54 UTC
Noticed a patch in Halcy0n's overlay for this game. It allows the compile to complete here on GCC 4.0.2; unfortunately it does not improve portability, so I will not be able to add an ~amd64 keyword. Msg "Not enough memory for file grouping system" is emitted.
Thanks for you work Mark!
Comment 2 Patrizio Bassi 2006-03-05 11:03:33 UTC
this is not fixed, even with his patch

engine.c:3293: warning: dereferencing type-punned pointer will break strict-aliasing rules
engine.c: At top level:
a.h:119: error: ‘asm_mmxoverlay’ aliased to undefined symbol ‘_asm_mmxoverlay’
a.h:120: error: ‘asm_sethlinesizes’ aliased to undefined symbol ‘_asm_sethlinesizes’
a.h:121: error: ‘asm_setpalookupaddress’ aliased to undefined symbol ‘_asm_setpalookupaddress’
a.h:122: error: ‘asm_setuphlineasm4’ aliased to undefined symbol ‘_asm_setuphlineasm4’
a.h:123: error: ‘asm_hlineasm4’ aliased to undefined symbol ‘_asm_hlineasm4’
a.h:124: error: ‘asm_setuprhlineasm4’ aliased to undefined symbol ‘_asm_setuprhlineasm4’
a.h:125: error: ‘asm_rhlineasm4’ aliased to undefined symbol ‘_asm_rhlineasm4’
a.h:126: error: ‘asm_setuprmhlineasm4’ aliased to undefined symbol ‘_asm_setuprmhlineasm4’
a.h:127: error: ‘asm_rmhlineasm4’ aliased to undefined symbol ‘_asm_rmhlineasm4’
a.h:128: error: ‘asm_setupqrhlineasm4’ aliased to undefined symbol ‘_asm_setupqrhlineasm4’
a.h:129: error: ‘asm_qrhlineasm4’ aliased to undefined symbol ‘_asm_qrhlineasm4’
a.h:130: error: ‘asm_setvlinebpl’ aliased to undefined symbol ‘_asm_setvlinebpl’
a.h:131: error: ‘asm_fixtransluscence’ aliased to undefined symbol ‘_asm_fixtransluscence’
a.h:132: error: ‘asm_prevlineasm1’ aliased to undefined symbol ‘_asm_prevlineasm1’
a.h:133: error: ‘asm_vlineasm1’ aliased to undefined symbol ‘_asm_vlineasm1’
a.h:134: error: ‘asm_setuptvlineasm’ aliased to undefined symbol ‘_asm_setuptvlineasm’
a.h:135: error: ‘asm_tvlineasm1’ aliased to undefined symbol ‘_asm_tvlineasm1’
a.h:136: error: ‘asm_setuptvlineasm2’ aliased to undefined symbol ‘_asm_setuptvlineasm2’
a.h:137: error: ‘asm_tvlineasm2’ aliased to undefined symbol ‘_asm_tvlineasm2’
a.h:138: error: ‘asm_mvlineasm1’ aliased to undefined symbol ‘_asm_mvlineasm1’
a.h:139: error: ‘asm_setupvlineasm’ aliased to undefined symbol ‘_asm_setupvlineasm’
a.h:140: error: ‘asm_vlineasm4’ aliased to undefined symbol ‘_asm_vlineasm4’
a.h:141: error: ‘asm_setupmvlineasm’ aliased to undefined symbol ‘_asm_setupmvlineasm’
a.h:142: error: ‘asm_mvlineasm4’ aliased to undefined symbol ‘_asm_mvlineasm4’
a.h:143: error: ‘asm_setupspritevline’ aliased to undefined symbol ‘_asm_setupspritevline’
a.h:144: error: ‘asm_spritevline’ aliased to undefined symbol ‘_asm_spritevline’
a.h:145: error: ‘asm_msetupspritevline’ aliased to undefined symbol ‘_asm_msetupspritevline’
a.h:146: error: ‘asm_mspritevline’ aliased to undefined symbol ‘_asm_mspritevline’
a.h:147: error: ‘asm_tsetupspritevline’ aliased to undefined symbol ‘_asm_tsetupspritevline’
a.h:148: error: ‘asm_tspritevline’ aliased to undefined symbol ‘_asm_tspritevline’
a.h:149: error: ‘asm_mhline’ aliased to undefined symbol ‘_asm_mhline’
a.h:150: error: ‘asm_mhlineskipmodify’ aliased to undefined symbol ‘_asm_mhlineskipmodify’
a.h:151: error: ‘asm_msethlineshift’ aliased to undefined symbol ‘_asm_msethlineshift’
a.h:152: error: ‘asm_thline’ aliased to undefined symbol ‘_asm_thline’
a.h:153: error: ‘asm_thlineskipmodify’ aliased to undefined symbol ‘_asm_thlineskipmodify’
a.h:154: error: ‘asm_tsethlineshift’ aliased to undefined symbol ‘_asm_tsethlineshift’
a.h:155: error: ‘asm_setupslopevlin’ aliased to undefined symbol ‘_asm_setupslopevlin’
a.h:156: error: ‘asm_slopevlin’ aliased to undefined symbol ‘_asm_slopevlin’
a.h:157: error: ‘asm_settransnormal’ aliased to undefined symbol ‘_asm_settransnormal’
a.h:158: error: ‘asm_settransreverse’ aliased to undefined symbol ‘_asm_settransreverse’
a.h:159: error: ‘asm_setupdrawslab’ aliased to undefined symbol ‘_asm_setupdrawslab’
a.h:160: error: ‘asm_drawslab’ aliased to undefined symbol ‘_asm_drawslab’
a.h:161: error: ‘asm_stretchhline’ aliased to undefined symbol ‘_asm_stretchhline’
a.h:162: error: ‘asm_isvmwarerunning’ aliased to undefined symbol ‘_asm_isvmwarerunning’
a.h:168: error: ‘asm_prohlineasm4’ aliased to undefined symbol ‘_asm_prohlineasm4’
make: *** [engine.o] Error 1
make: Leaving directory `/var/tmp/portage/duke3d-20040817/work/duke3d/source/buildengine'

!!! ERROR: games-fps/duke3d-20040817 failed.
Call stack:
  ebuild.sh, line 1933:   Called dyn_compile
  ebuild.sh, line 971:   Called src_compile

!!! buildengine failed
!!! If you need support, post the topmost build error, and the call stack if relevant.
Comment 3 E. Scaglione 2006-06-22 02:48:30 UTC
Created attachment 89788 [details]
patch to use extern instead of alias

alias requires that the asm function be defined in the same file, using extern works, with this patch duke3d compiles cleanly on gcc-4.1.1 and works
Comment 4 E. Scaglione 2006-06-22 03:20:03 UTC
Created attachment 89790 [details]
small typo corrected
Comment 5 E. Scaglione 2006-06-22 03:24:29 UTC
Created attachment 89791 [details]
duke3d-overlay.tar.bz2

my overlay for duke3d, includes the other patch to gcc4-patch from bug #134693 that seems needed (and logical) too.
Comment 6 David Turner 2006-07-23 10:24:43 UTC
duke3d-20040817 was broken for me as per bug 140441 when I
upgraded to X.Org 7.0

duke3d-overlay.tar.bz2 has fixed this for me.

It builds and runs with no problems.

IMHO, this should be committed to CVS as duke3d is broken without this.
Comment 7 David Turner 2006-07-23 10:49:44 UTC
Just a further note,

I am using tar 1.15.1 and bzip2 1.0.3.

When I tried "tar -xvjf duke3d-overlay.tar.bz2", it failed with :
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Error exit delayed from previous errors

Other *.tar.bz2 files are decompressed successfully.

However "bunzip2 duke3d-overlay.tar.bz2 && tar -xvf duke3d-overlay.tar"
works fine.

I'm not sure why the duke3d-overlay.tar.bz2 trips up "tar -xvjf".

But I am stating this in case people are having problems and thinking
duke3d-overlay.tar.bz2 is corrupt.
Comment 8 Tupone Alfredo gentoo-dev 2006-08-30 05:02:57 UTC
Fix is now in portage. Thanks for contributions.