Re: Compile Objective C 2.0 code on Linux
Re: Compile Objective C 2.0 code on Linux
- Subject: Re: Compile Objective C 2.0 code on Linux
- From: Jean-Daniel Dupas <email@hidden>
- Date: Thu, 18 Dec 2008 18:26:35 +0100
Le 18 déc. 08 à 18:13, Jean-Daniel Dupas a écrit :
Le 18 déc. 08 à 17:47, Jake McMahon a écrit :
I hate to bring this up now but you guys have been so helpful.
What about getting trying to accomplish this on the last binary
version of Darwin released by Apple
On Thu, Dec 18, 2008 at 11:44 AM, Benjamin Huntsman
<email@hidden> wrote:
autozone is a garbage collector that garbage collects a specific
region of memory, the AutoZone... :) I'd think it'd be a major
horror to port to Linux, given that it's memory model is
different, and I doubt you want to monkey with that anyway.
I'd start by looking at the older PureDarwin releases
(puredwarin.googlecode.com). They had a patch for objc4 that
eliminated the dependency on autozone. They got removed from the
distribution after Apple open-sourced autozone, though. If you
can't find 'em, I'll e-mail the diffs to you. I'd start by
applying the patches, then try to get objc4 ported. Contrary to
what someone mentioned earlier, it -does not- depend on
Foundation. It does however depend on CoreFoundation, which is
open source and has been successfully compiled on Linux...
That's not how I interpret this comment from objc_exception.m (in
obj4 project):
// quick and dirty exception handling code
// default implementation - mostly a toy for use outside/before
Foundation
// provides its implementation
// Perhaps the default implementation should just complain loudly
and quit
And to complete my assertion.
There is a bunch of runtime initialization function
(objc_setForwardHandler, objc_setEnumerationMutationHandler, etc.)
that are called by the foundation to properly initialize the runtime.
And note also that the runtime expect mach-o binaries (you will have
to write an elf loader on Linux).
And If you are lucky, the Mac OS and Linux i386 ABI are compatible,
else you would have to make sure the assembly functions properly
handle the differences.
Good Luck !
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden