On Fri, 23 Mar 2007 23:31:57 -0400, Kumba <kumba@gentoo.org> wrote:
> Well, o64 went away as we all know. It was never a favourable
> option for very good reasons (although I used it right up until it
> died and I was forced off of it). The replacement for it, that was
> more preferred and resulted in similar code was building a kernel
> for any of these three systems using CONFIG_BUILD_ELF64 + -msym32
> (auto selected in the Makefile) + the make vmlinux.32 target. I
> believe this method is what Debian uses for building their mips
> kernels for SGI systems, but don't quote me on that. If someone
> from Debian wants to comment, please do.
The replacement is CONFIG_BUILD_ELF64=n (it adds -msym32 option) +
CONFIG_BOOT_ELF32=y (it adds vmlinux.32 to "all" target). Not
CONFIG_BUILD_ELF64=y.
CONFIG_BUILD_ELF64=n enables -msym32 option, which means the kernel
load address should be CKSEG0. And if the kernel load address was
CKSEG0, -msym32 make the kernel smaller and faster so it is absolutely
preferred.
CONFIG_BOOT_ELF32=y enables objcopying vmlinux to vmlinux.32.
---
Atsushi Nemoto
|