A few things

Clinton MacDonald yellowdog-general@lists.terrasoftsolutions.com
Tue, 07 Sep 2004 11:44:51 -0500


Mr. Roy:

Steve Roy wrote:
> On Sep 7, 2004, at 11:12 AM, Geert Janssens wrote:
> 
>> That page is very unlikely to contain a version of
>> Thunderbird for PPC linux. [...]
> 
> I wonder what is involved in "porting" Linux software
> from an x86 distribution to a PPC one. Why is it
> different?

Unfortunately, compiled software on an x86 distribution of Linux (or any 
platform) is almost completely, totally, and utterly different from 
software on the PPC platform.

> Is the executable format different on PPC Linux than
> it is on x86 Linux? That can't be true.

No, it is true. The format is completely different. The Intel x86 
processor series is an entirely different architecture than the PowerPC 
series on which modern Macs are based. In fact, the PowerPC series of 
processors is entirely different than the 680x0 series of Motorola 
processors that preceded it (one of Apple's greatest achievements, which 
was largely invisible to the end user, was porting their operating 
system from the 680x0 processor to the PowerPC processor without a 
hiccough -- much of this was done through a complicated emulation layer 
that intercepted 680x0 calls).

Just one way in which x86 and PowerPC processors are different is in 
their "endian-ness." x86 processors are "little-endian" while PowerPCs 
are "bi-endian" (680x0 were "big-endian"). Without going into details, 
endian-ness is a fundamental choice that is made early in the design of 
a processor, and effects all subsequent decisions.

Compilers are designed to take this decision (and many, many others) 
into account in creating the executable from the source code. While the 
source code may (or may not -- it could make hardware assumptions) be 
platform neutral, the executables are not.

Some new computer languages like Java are trying to move away from 
platform bigotry. They do so by writing code that calls a "virtual 
machine." The virtual machine is an imaginary computer that is written 
in software, but that can be ported to almost any computer. The 
executables for these virtual machines are, of course, platform-specific.

> Basically, what needs to be done to the Thunderbird
> Linux x86 download to make it work on PPC and who
> does that?

Find the source code on the Mozilla Thunderbird and compile it yourself 
(if you know how). The true value of Open Source software is that this 
is an option. Or, wait for someone more knowledgeable (not me!) to 
compile it for you and make it available in the form or an RPM or yum 
repository.

Sorry for the bad news!

Best wishes,
Clint

-- 
Dr. Clinton C. MacDonald | <mailto:clint DOT macdonald AT sbcglobal DOT net>