Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 127529 - Nasm built with -fforce-addr causes packages depending on it to not compile
Summary: Nasm built with -fforce-addr causes packages depending on it to not compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Mr. Bones. (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-25 06:40 UTC by Alex
Modified: 2006-03-28 21:56 UTC (History)
0 users

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 Alex 2006-03-25 06:40:20 UTC
Here is an example error when nasm is compiled with -fforce-addr and a package that uses it is emerged:

======= Backtrace: =========
/lib/libc.so.6[0xb7e42da0]
/lib/libc.so.6(__libc_free+0x84)[0xb7e443d4]
/usr/bin/nasm[0x806ccc6]
======= Memory map: ========
08048000-08080000 r-xp 00000000 03:03 8347676    /usr/bin/nasm
08080000-08093000 rw-p 00038000 03:03 8347676    /usr/bin/nasm
08093000-08160000 rw-p 08093000 00:00 0          [heap]
b7c00000-b7c21000 rw-p b7c00000 00:00 0
b7c21000-b7d00000 ---p b7c21000 00:00 0
b7dd0000-b7dda000 r-xp 00000000 03:03 8475964    /usr/lib/gcc/i686-pc-linux-gnu/4.1.0/libgcc_s.so.1
b7dda000-b7ddb000 rw-p 00009000 03:03 8475964    /usr/lib/gcc/i686-pc-linux-gnu/4.1.0/libgcc_s.so.1
b7ddb000-b7ddc000 rw-p b7ddb000 00:00 0
b7ddc000-b7dde000 r-xp 00000000 03:03 8519396    /lib/libdl-2.4.so
b7dde000-b7de0000 rw-p 00001000 03:03 8519396    /lib/libdl-2.4.so
b7de0000-b7ef7000 r-xp 00000000 03:03 8519240    /lib/libc-2.4.so
b7ef7000-b7ef9000 r--p 00116000 03:03 8519240    /lib/libc-2.4.so
b7ef9000-b7efb000 rw-p 00118000 03:03 8519240    /lib/libc-2.4.so
b7efb000-b7efe000 rw-p b7efb000 00:00 0
b7f0e000-b7f15000 r-xp 00000000 03:03 7817196    /usr/lib/libsandbox.so.0.0.0
b7f15000-b7f16000 rw-p 00006000 03:03 7817196    /usr/lib/libsandbox.so.0.0.0
b7f16000-b7f19000 rw-p b7f16000 00:00 0
b7f19000-b7f33000 r-xp 00000000 03:03 8519405    /lib/ld-2.4.so
b7f33000-b7f34000 r--p 00019000 03:03 8519405    /lib/ld-2.4.so
b7f34000-b7f35000 rw-p 0001a000 03:03 8519405    /lib/ld-2.4.so
bfb1b000-bfb33000 rw-p bfb1b000 00:00 0          [stack]
ffffe000-fffff000 ---p 00000000 00:00 0          [vdso]
../../libtool: line 1211: 22865 Aborted                 sh ../../strip_fPIC.sh /usr/bin/nasm -f elf mmx_main.asm -fPIC -DPIC -o .libs/mmx_main.o
make[2]: *** [mmx_main.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
 sh ../../strip_fPIC.sh /usr/bin/nasm -f elf mmxp2_32.asm  -fPIC -DPIC -o .libs/mmxp2_32.o
/usr/bin/nasm -f elf mmxp2_32.asm -o .libs/mmxp2_32.o
*** glibc detected *** /usr/bin/nasm: double free or corruption (out): 0xb7f38158 ***
======= Backtrace: =========
/lib/libc.so.6[0xb7e7fda0]
/lib/libc.so.6(__libc_free+0x84)[0xb7e813d4]
/usr/bin/nasm[0x806ccc6]
======= Memory map: ========
08048000-08080000 r-xp 00000000 03:03 8347676    /usr/bin/nasm
08080000-08093000 rw-p 00038000 03:03 8347676    /usr/bin/nasm
08093000-08160000 rw-p 08093000 00:00 0          [heap]
b7d00000-b7d21000 rw-p b7d00000 00:00 0
b7d21000-b7e00000 ---p b7d21000 00:00 0
b7e0d000-b7e17000 r-xp 00000000 03:03 8475964    /usr/lib/gcc/i686-pc-linux-gnu/4.1.0/libgcc_s.so.1
b7e17000-b7e18000 rw-p 00009000 03:03 8475964    /usr/lib/gcc/i686-pc-linux-gnu/4.1.0/libgcc_s.so.1
b7e18000-b7e19000 rw-p b7e18000 00:00 0
b7e19000-b7e1b000 r-xp 00000000 03:03 8519396    /lib/libdl-2.4.so
b7e1b000-b7e1d000 rw-p 00001000 03:03 8519396    /lib/libdl-2.4.so
b7e1d000-b7f34000 r-xp 00000000 03:03 8519240    /lib/libc-2.4.so
b7f34000-b7f36000 r--p 00116000 03:03 8519240    /lib/libc-2.4.so
b7f36000-b7f38000 rw-p 00118000 03:03 8519240    /lib/libc-2.4.so
b7f38000-b7f3b000 rw-p b7f38000 00:00 0
b7f4b000-b7f52000 r-xp 00000000 03:03 7817196    /usr/lib/libsandbox.so.0.0.0
b7f52000-b7f53000 rw-p 00006000 03:03 7817196    /usr/lib/libsandbox.so.0.0.0
b7f53000-b7f56000 rw-p b7f53000 00:00 0
b7f56000-b7f70000 r-xp 00000000 03:03 8519405    /lib/ld-2.4.so
b7f70000-b7f71000 r--p 00019000 03:03 8519405    /lib/ld-2.4.so
b7f71000-b7f72000 rw-p 0001a000 03:03 8519405    /lib/ld-2.4.so
bf859000-bf870000 rw-p bf859000 00:00 0          [stack]
ffffe000-fffff000 ---p 00000000 00:00 0          [vdso]
../../libtool: line 1211: 22899 Aborted                 sh ../../strip_fPIC.sh /usr/bin/nasm -f elf mmxp2_32.asm -fPIC -DPIC -o .libs/mmxp2_32.o
make[2]: *** [mmxp2_32.lo] Error 1
make[2]: Leaving directory `/var/tmp/portage/libsdl-1.2.9-r1/work/SDL-1.2.9/src/hermes'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/libsdl-1.2.9-r1/work/SDL-1.2.9/src'
make: *** [all-recursive] Error 1

!!! ERROR: media-libs/libsdl-1.2.9-r1 failed.
!!! Function src_compile, Line 154, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message.

As soon as nasm is compiled with -fno-force-addr, this package compiles. Please add a strip-flag of -fforce-addr, or append -fno-force-addr.
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2006-03-25 09:53:19 UTC
you forgot to include the output from emerge --info.  please do that.
Comment 2 Alex 2006-03-25 10:19:50 UTC
Not that I see any reason why it helps because the problem is already found, but here you go:

Portage 2.1_pre7 (default-linux/x86/2006.0, gcc-4.1.0, glibc-2.4-r1, 2.6.16-nitro-git7 i686)
=================================================================
System uname: 2.6.16-nitro-git7 i686 AMD Athlon(tm) 64 Processor 3300+
Gentoo Base System version 1.12.0_pre16
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.4.2-r1
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-r2
sys-devel/binutils:  2.16.91.0.6, 2.16.91.0.7
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="-O2 -march=k8 -pipe -ftracer -fweb -frename-registers -fomit-frame-pointer -mfpmath=sse -fno-ident -freorder-blocks-and-partition"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -march=k8 -pipe -ftracer -fweb -frename-registers -fomit-frame-pointer -mfpmath=sse -fno-ident -freorder-blocks-and-partition -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache confcache distlocks metadata-transfer parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,-Bdirect -Wl,-hashvals -Wl,-zdynsort"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/overlays/emission-guide /usr/local/overlays/xgl-coffee"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 3dfx 3dnow X a52 alsa apm avi bash-completion beagle berkdb bitmap-fonts cairo cli crypt ctype cups dba dbus dri dvd eds emboss encode esd expat fam fastbuild firefox flac foomaticdb force-cgi-redirect fortran ftp gd gdbm gif glibc-omitfp glitz gnome gpm gstreamer gtk gtk2 hal imlib inotify ipv6 java jpeg kde libg++ libnotify libsexy libwww mad memlimit mikmod mmext mmx mono motif mp3 mpeg ncurses nls nptl nptlonly nsplugin nvidia ogg opengl oss pam pcre pdflib perl png posix python qt quicktime readline sdl session simplexml soap sockets spell spl sqlite sqlite3 sse sse2 ssl tcpd theora tokenizer truetype truetype-fonts type1-fonts udev vorbis win32codecs xml xsl xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux userland_GNU video_cards_nvidia"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LINGUAS, MAKEOPTS

Please know this is my make.conf, the error was for someone else, but I fixed it with a bashrc entry.
Comment 3 Mr. Bones. (RETIRED) gentoo-dev 2006-03-25 18:08:07 UTC
nasm-0.98.39-r3.ebuild strips flags so that should fix things up.
Comment 4 Alex 2006-03-25 18:10:52 UTC
Are you talking about the one released on 05 of january? If so I see nothing about strip-flags in there..
Comment 5 Alex 2006-03-28 21:51:40 UTC
Reponed as you haven't replied and I see no mention of strip-flags, nor anything about flags in that ebuild.
Comment 6 Mr. Bones. (RETIRED) gentoo-dev 2006-03-28 21:56:53 UTC
resync.