Re: cross compiler deb package question
On Wednesday 22 January 2003 23:22, Daniel Schepler wrote:
> I think for x86-64 the default should be 64 bit libraries, with others
> having versions libc6-32 or maybe libc6-i386, and so on. I'm curious,
> though, why sparc uses 32 bit libraries as the default -- is the
> reason for it something specific to sparc systems, or would it apply
> to x86-64 too? Or is this something which the upstream x86-64
> developers have an explicit opinion on?
There are several points to consider here:
- both s390 and sparc typically don't perform better with 64 bit than
with 32 bit -- except when you need more than 2 GB (4 GB on sparc?)
of physical RAM or when the application uses lots of 64 bit
- x86_64 is likely to perform much better in native mode than in i386
compatibility mode because of extra registers etc.
- There is no 64 bit s390 Debian mostly because of lack of disk space
on the mirror servers. It may be similar for sparc.
- Both 64 bit and 32 bit kernels can run with 32 bit user space, but
not both can use 64 bit user space. If you can only support one,
it has to be 32 bit.
- SuSE and Red Hat have 64 bit user space as default for x86_64
and s390x. Don't know about sparc and ppc.
- Starting with 32 bit user space and biarch tool chain makes the
bootstrap a lot simpler than cross building from scratch.
- All the library packages that need to support 64 bit have to
be changed anyway. We should make sure that those changes have
to be done only once, not in different ways for e.g. s390 and x86_64.
Note that I care most about s390, but the problems are the
same for sparc, ppc, mips and hppa. All these have only 32 bit user
space at the moment, although they all have 64 bit cpus available
that could run biarch user space.