Hi,

Sorry for the lack of testing and specificity, but this should be fairly easy
to reproduce. Another user on Freenode's #gcc reported the same problem, so I
don't think it's just my setup. #gcc suggested I use a static gdb for
debugging, but for now I will link to some ltrace and strace dumps.

GCC 4.3.3 (about the latest snapshot, or any version) builds glibc 2.8
(snapshot) just fine, and it seems to be perfectly stable. A few days ago I
wanted to give 4.4.0 a try, so I built GCC, and rebuilt gcc and binutils from
the new GCC. Everything seemed to go fine, so I went on to glibc. glibc built
fine, but after upgrading to it I noticed that most glibc-linked (which is just
about everything on my box) applications segfaulted. Fortunately, strace and
ltrace were seemingly unaffected.

Common patterns I noticed with what broke and what didn't were that Coreutils
stuff broke along with GCC, Bash, nano, sed, vi, but module-init-tools,
Busybox, nsudoku, Pacman, osstest, and time all run just fine (as in no
segfaults).

http://pastebin.com/f21432957 has ltraces and straces of several binaries
linked to glibc that segfault. Let me know if I should do l/straces of binaries
that don't segfault or try something else. This should be quite reproducible
though. Should I try anything else? Sorry for my lack of informedness in this
area, I'll try to learn more when I have the time. This is on Icadyptes, my
Arch Linux fork. I build just about everything with -march=i486 -mtune=generic
-O2 -fomit-frame-pointer -pipe, if it helps. This is on Linux 2.6.28/2.6.29.

[r...@silentgnu ~]# gcc -v
Using built-in specs.
Target: i486-pc-linux-gnu
Configured with: ../configure --prefix=/usr --enable-shared
--enable-languages=c,c++ --enable-threads=posix --enable-__cxa_atexit
--disable-multilib --libdir=/usr/lib --libexecdir=/usr/lib --enable-clocale=gnu
--disable-libstdcxx-pch --with-tune=generic --host=i486-pc-linux-gnu
--target=i486-pc-linux-gnu --build=i486-pc-linux-gnu
Thread model: posix
gcc version 4.4.0 (GCC)

Thanks,
Teran

PS: Great job on GCC, I was impressed to find that GCC 4.4.0 generally built
smaller binaries than 4.3.3. I didn't get to do any benchmarking, but keep up
the good work :-).


-- 
           Summary: GCC 4.4.0 builds a broken glibc 2.8
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: sega01 at go-beyond dot org
 GCC build triplet: i486-pc-linux-gnu
  GCC host triplet: i486-pc-linux-gnu
GCC target triplet: i486-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39852

Reply via email to