Snow Leopard ate my ports

Jean-Denis Muys jdmuys at kleegroup.com
Wed Oct 14 05:42:15 PDT 2009


On 10/14/09 14:03 , "Lenore Horner" <LenoreHorner at sbcglobal.net> wrote:

>> Try to build 64-bit software against 32-bit
>> dependencies and you won't get very far. You must rebuild everything
>> first.
> Not being a computer scientist, what's the quick explanation for why a
> machine that can run both 32-bit and 64-bit stuff can't have 64-bit
> stuff talk to 32-bit stuff?
> 

The desire to learn is always a good thing. However this list might not be
quite the best tool for that.

"talking" isn't a very well defined term, and nor is "stuff".

Building a non-trivial piece of software involves a number of steps. One of
the last of those is "linking" whereby you connect a number of different
pieces called "object files" in a way that they can call upon each other.
For that to be possible, all the object files must be "link-compatible". To
be link-compatible, object files must among other things have the same
architecture. 32-bit object files and 64-bits object files are not
link-compatible.

The above description is vastly oversimplified, but I hope it can suggest
why you need to rebuild you ports when going from a configuration where
ports are 32-bit to another where they are 64-bit.

For more details, Google is your friend.

Jean-Denis



More information about the macports-users mailing list