[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: API differences between GNUstep and OS X

From: Richard Frith-Macdonald
Subject: Re: API differences between GNUstep and OS X
Date: Mon, 27 Feb 2012 09:49:08 +0000

On 27 Feb 2012, at 00:06, Jens Alfke wrote:

> I’ve gotten past my installation problem (thanks everyone!) and now I’m 
> getting down to making my code compile. I’m running into a lot of issues 
> where APIs are different or missing. Some of these are Linux vs. BSD (e.g. 
> digittoint), some are Apple frameworks that aren’t part of GNUstep (e.g. 
> CommonCrypto). Those are expected and I’m dealing with them.
> But there are also a lot of instances where the GNUstep base framework is out 
> of date with respect to Apple’s Foundation. A lot of methods that’ve been 
> around since OS X 10.5 seems to be missing; some I’ve run into are
>       −[NSFileManager removeItemAtPath:error:]
>       +[NSData dataWithContentsOfFile:options:error:]
> I don’t expect everything to be identical to Apple’s headers, but I was 
> expecting the differences to be in new APIs or obscure classes.

We claim to implement OSX 10.4 as our baseline (with the exception that we 
specifically don't implement the applescript support classes as these seem 
rather pointless on non-apple systems ... though if online wants to contribute 
them, we'll happily accept them).  So, if there's anything missing thats *not* 
from a new version of the API, please file it as a bug report at 

But ... we actually already have implemented quite a large proportion of 
post-10.4 classes (and methods of existing classes) too.

> Is there a newer version of the framework available, or is this the state of 
> the art and I’ll need to start changing my code or implementing those methods 
> myself in categories?

The current release version (1.24.0) of base is really recent ... if you are 
using the current release then what you see there is basically what's currently 
implemented (though the XML DOM classes (NSXMLNode etc) are in advanced 
development in subversion trunk).

If you need something that's not in 1.24.0, the best thing to do is implement 
it and contribute it (so your work will be published and maintained).  You'll 
find people on the mailing list happy to give you advice on how to go about it. 
 I'm trying to produce useful information/hints etc for that on the wiki at 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]