One day, I built gcc 4.4.1 prerelease, with normal multilib. The next day, I
realized I forgot to add Ada, and all of a sudden multilib failed with the
exact same configuration. At the time, I didn't think too much of it and don't
remember if anything else happened between the two builds, but it is likely I
updated Binutils between those two exact same builds. I have not been getting
it to work at all anymore, and I thought it was unique to Cygwin where I
couldn't get 4.4.x Multilib for as far as I can remember.

I went back to the build that was building in Multilib, and it died with no
rule to make 32/zlib. GCC will accept the -m32 flag, but the 64-bit assembler
is used. The 32 dir multi-versions are not created, as if multilib was
disabled.

This is highly likely related to Binutils. However, whether it is a bug in
Binutils, or a change in Binutils that caused a bug in 4.4.x to surface, I do
not know. I will give you configuration lines (just one time), but believe me,
they are not relevant. --enable-multilib wasn't even necessary for gcc, only
Binutils. The working multilib version of 4.4.1 I have proves it (via -v.)

This bug applies 100% to Linux x86_64 as it does to Windows x64. It has nothing
to do with the Mingw-w64 crt, as it occurs before fresh installation of crt, by
gcc in make all-gcc (after doing that, building a new crt reveals the incorrect
64-bit assembler.)

Binutils (last tried yesterday's update): ../configure
--target=x86_64-w64-mingw32 --enable-multilib
--enable-targets=x86_64-w64-mingw32,i686-w64-mingw32 --with-sysroot=/mingw64
--prefix=/mingw64 --with-ppl=/usr --with-cloog=/usr

GCC 4.4.1 Release: (small testcase)
../configure --target=x86_64-w64-mingw32 --enable-targets=all
--with-sysroot=/mingw64 --prefix=/mingw64 --with-ppl=/usr --with-cloog=/usr
--enable-languages=c,c++

Thanks, I will pass this same report to Binutils.


-- 
           Summary: Mutilib for the gcc 4.4.x branch no longer works
           Product: gcc
           Version: 4.4.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: xenofears at gmail dot com
 GCC build triplet: x86_64-w64-mingw32, x86_64-unknown-linux-gnu, i686-pc-
                    cygwin, li
  GCC host triplet: x86_64-w64-mingw32, x86_64-unknown-linux-gnu, i686-pc-
                    cygwin, li
GCC target triplet: x86_64-w64-mingw32


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

Reply via email to