Summary: | sys-devel/binutils-2.25.1-r1 ld buffer overflow when LANG=bg_BG.utf8 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | blackd <p.kosseff> |
Component: | Current packages | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED TEST-REQUEST | ||
Severity: | major | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
genkernel output
emerge --info emerge --info second machine successful run output Failed run output backtrace |
Description
blackd
2016-08-05 16:44:56 UTC
Created attachment 442632 [details]
emerge --info
Well it looks the attachment numbers are global.
Please disregard "attachment 1 [details]" in the description.
Another way to reproduce it:
# export LANG=bg_BG.utf8
# cd /usr/portage/sys-apps/busybox
# ebuild busybox-1.24.2.ebuild clean configure
# cd /var/tmp/portage/sys-apps/busybox-1.24.2/work/busybox-1.24.2
# make
It's somehow related to -Wl,-Map,.. because if I remove it the build is successful.
-Wl,-Map, is located in /var/tmp/portage/sys-apps/busybox-1.24.2/work/busybox-1.24.2/scripts/trylink
> INFO_OPTS="-Wl,--warn-common -Wl,-Map,$EXE.map -Wl,--verbose"
(In reply to blackd from comment #3) thanks for the simple reproducer, but it's not reproducing for me :/ can you find a way that fails involving: env -i PATH="$PATH" LANG="$LANG" make Hi, For me it's 100% reproducible on 2 different installation fallowing these steps. 1. edit /etc/locale.gen to only have > en_US.UTF-8 UTF-8 > bg_BG.UTF-8 UTF-8 2. # locale-gen 3. fallow the steps form comment 3 with make changed to env -i PATH="$PATH" LANG="$LANG" make i don't think it's related, but your global compiler settings are broken. you should never put -fPIC into CFLAGS/CXXFLAGS. please delete those and rebuild binutils and see if it happens to improve things. Created attachment 442894 [details]
emerge --info second machine
One of the computers doesn't have -fPIC in CLFAGS
when the make fails, it should show a line like "Output of: x86_64-pc-linux-gnu-gcc........". can you try running that line it shows and see if it fails ? if it does, try deleting the -Wl,-Map,busybox_unstripped.map -Wl,--verbose flags and see if it still crashes. Created attachment 442902 [details]
successful run output
Successful run output:
env -i PATH="$PATH" x86_64-pc-linux-gnu-gcc ... (full command in the attachment)
Created attachment 442904 [details]
Failed run output
env -i PATH="$PATH" LANG="$LANG" x86_64-pc-linux-gnu-gcc ...
Created attachment 442910 [details]
backtrace
(In reply to SpanKY from comment #8) > when the make fails, it should show a line like "Output of: > x86_64-pc-linux-gnu-gcc........". can you try running that line it shows > and see if it fails ? > > if it does, try deleting the -Wl,-Map,busybox_unstripped.map -Wl,--verbose > flags and see if it still crashes. Doesn't crash when I remove -Wl,-Map,busybox_unstripped.map Removing -Wl,--verbose doesn't make any difference. 2.26.1 & 2.27 are in the tree now. can you give them a try ? |