2007-02-05 12:28:52

by Al Boldi

[permalink] [raw]
Subject: 2.6.20 doesn't compile with gcc-3.2.2


Doing the following results in an incomplete vmlinuz:

# make mrproper
# make allnoconfig
# make bzlilo

objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated
make[2]: *** [arch/i386/boot/compressed/vmlinux.bin] Error 1
make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
make: *** [bzlilo] Error 2

# gcc -v
Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/specs
Configured with: ../configure --prefix=/usr --libdir=/usr/lib
--with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info
--enable-shared --enable-threads=posix --disable-checking --enable-long-long
--enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java
--host=i586-mandrake-linux-gnu --with-system-zlib
Thread model: posix
gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk)


Is gcc-4.0.1 now the minimum required to compile the kernel?


Thanks!

--
Al


2007-02-05 13:24:16

by Alistair John Strachan

[permalink] [raw]
Subject: Re: 2.6.20 doesn't compile with gcc-3.2.2

On Monday 05 February 2007 12:31, you wrote:
> Doing the following results in an incomplete vmlinuz:
>
> # make mrproper
> # make allnoconfig
> # make bzlilo
>
> objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated
> make[2]: *** [arch/i386/boot/compressed/vmlinux.bin] Error 1
> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> make: *** [bzlilo] Error 2
>
> # gcc -v
> Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/specs
> Configured with: ../configure --prefix=/usr --libdir=/usr/lib
> --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info
> --enable-shared --enable-threads=posix --disable-checking
> --enable-long-long --enable-__cxa_atexit
> --enable-languages=c,c++,ada,f77,objc,java
> --host=i586-mandrake-linux-gnu --with-system-zlib
> Thread model: posix
> gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk)
>
>
> Is gcc-4.0.1 now the minimum required to compile the kernel?

A patch went in to remove support for GCC 3.1, but as far as I know, 3.2
should be a supported compiler.

At any rate, this might be a binutils issue. What version of binutils are you
using?

--
Cheers,
Alistair.

Final year Computer Science undergraduate.
1F2 55 South Clerk Street, Edinburgh, UK.

2007-02-07 09:33:40

by Andi Kleen

[permalink] [raw]
Subject: Re: 2.6.20 doesn't compile with gcc-3.2.2

Al Boldi <[email protected]> writes:

> Doing the following results in an incomplete vmlinuz:
>
> # make mrproper
> # make allnoconfig
> # make bzlilo
>
> objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated

This looks more like some local problem. Are you sure you didn't run out of
disk space or similar? When you rerun make what error do you see?

> make[2]: *** [arch/i386/boot/compressed/vmlinux.bin] Error 1
> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> make: *** [bzlilo] Error 2
>
> # gcc -v
> Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/specs
> Configured with: ../configure --prefix=/usr --libdir=/usr/lib
> --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info
> --enable-shared --enable-threads=posix --disable-checking --enable-long-long
> --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java
> --host=i586-mandrake-linux-gnu --with-system-zlib
> Thread model: posix
> gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk)
>
>
> Is gcc-4.0.1 now the minimum required to compile the kernel?

3.2 should work. Only 2.xx support was dropped.

-Andi

2007-02-07 14:14:32

by Al Boldi

[permalink] [raw]
Subject: Re: 2.6.20 doesn't compile with gcc-3.2.2

Andi Kleen wrote:
> Al Boldi <[email protected]> writes:
> > Doing the following results in an incomplete vmlinuz:
> >
> > # make mrproper
> > # make allnoconfig
> > # make bzlilo
> >
> > objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated
>
> This looks more like some local problem.

It's a binutils problem.

As Scott mentioned, upgrading from
GNU ld version 2.13.90.0.18 20030121
to
GNU ld version 2.15.92.0.2 20040927
solves it.

But it's still not clear what change in 2.6.20 required the upgrade.


Thanks!

--
Al