[nSLUG] Debian on an AMD 64

Jack Warkentin jwark at eastlink.ca
Sat Dec 17 20:56:35 AST 2005

Hi Everybody

On December 16, 2005 06:31 pm, J. Paul Bissonnette wrote:

> Ben Armstrong wrote:
> >On Fri, 2005-12-16 at 16:27 -0400, Jack Warkentin wrote:

> >>I got an AMD64-based laptop a few weeks ago and am trying to find
> >>a suitable distro for it. I read a lot about Debian AMD64 but it
> >>did not look appealing since it is not possible to run 64-bit and
> >>32-bit apps at the same time - you have to set up a separate
> >>chroot for the 32-bit apps.
> >>
> >
> >With open source, everything can be recompiled from source anyway.
> >Or do you depend on a lot of non-free stuff distributed in binary
> >form and only available for IA32?

I depend on very little if any non-free stuff. But according to the 
Debian GNU/Linux AMD64 HOW-TO (see 
) "the current AMD64 port of debian is a pure 64bit port. This means 
you can't run binary only programs which are compiled for IA32 or 
applications which haven't been ported to AMD64 yet (e.g. 
OpenOffice.org). This is because you can't mix 32bit applications and 
64bit libraries. You would also need the 32bit versions of the 
libraries to run a 32bit application."

I *do* depend on OpenOffice.org so I am stuck with needing an AMD64 
distro that includes the ability to run 32-bit apps at the same time 
as 64-bit apps. SuSE 10.0 and Kubuntu 5.10 both have this ability but 
I have issues with both.

> Say with recompiling the Debian source code, would this be simply
> the 32 bit source in and a 64 bit app out? When it comes to software
> engineering my best grade was a `F-` 

And on 16 Dec at 9:37 pm Ben Armstrong wrote:

> Source code does not come in "32 bit" and "64 bit" flavours. :)
> There are potential issues with poorly written source that is
> written assuming a 32 bit architecture that will not work on a 64
> bit architecture, but that isn't "32 bit source", it is simply buggy
> code. 

It is a little bit more than simply "poorly written source" or "buggy 
code". In the C programming language, size matters. Integer (short, 
int and long) and floating point (float and double) variables come in 
different sizes (number of bytes) which are implementation dependent. 
This affects not only simple variables but the way space is allocated 
in structures and arrays. Often integer variables and arrays are used 
to store bit strings so the number of bytes they occupy is critical. 
My knowledge of C is very limited so there are probably other issues 
where size does matter as well.

So when it is said that a 32-bit application has not yet been ported 
to 64-bit it means that all such issues have not yet been resolved.

> Many of these 64-bit issues are already fixed in Debian because
> Debian has for a long time supported other 64-bit architectures
> (e.g. Alpha). 
> But yes, essentially it is as you say.  When you compile for a 64
> bit architecture, you use the same source code that would be used to
> compile the app for a 32 bit architecture.

I would expect that there would be portions of the code that would be 
surrounded with  #ifdef <some identifier> ... #endif  some of which 
would apply only to 64-bit compiles and some of which would apply 
only to 32-bit compiles.



Jack Warkentin, phone 902-404-0457, email jwark at eastlink.ca
39 Inverness Avenue, Halifax, Nova Scotia, Canada, B3P 1X6


More information about the nSLUG mailing list