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
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!
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.
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
Created attachment 89790 [details] small typo corrected
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.
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.
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.
Fix is now in portage. Thanks for contributions.