[Openmcl-devel] how to access non NS classes

R. Matthew Emerson rme at clozure.com
Mon Nov 2 11:12:02 PST 2009


On Oct 31, 2009, at 11:47 AM, Alexander Repenning wrote:

>
> On Oct 31, 2009, at 1:34 AM, Gary Byers wrote:
>
>> It's a long story, but we're still distributing Tiger interfaces for
>> 32-bit platforms, so doing the OBJC:LOAD-FRAMEWORK call above in a
>> 32-bit
>> CCL  won't find declarations for things introduced in 10.5
>
> without the long story... is there an estimated time of arrival
> Leopard/Snow Leopard interfaces for CCL32?

I personally would like to see Clozure CL 1.5 (planned for May 2010 or  
so) require Leopard.  I will be quite surprised if Apple still  
supports Tiger then.

Meanwhile, it does work to build Leopard interfaces locally.

1. Build ffigen by following the instructions at: http://trac.clozure.com/openmcl/wiki/BuildFFIGEN
2. Edit ccl/darwin-x86-headers/cocoa/C/populate.sh to look like this:

#!/bin/sh
SDK=/Developer/SDKs/MacOSX10.5.sdk
if [ $# -eq 1 ]
then
SDK=$1
fi
rm -rf System Developer usr
CFLAGS="-isysroot ${SDK} -msse2 -mmacosx-version-min=10.5"; export  
CFLAGS
h-to-ffi.sh ${SDK}/System/Library/Frameworks/Cocoa.framework/Headers/ 
Cocoa.h

3. Follow the instructions at <http://ccl.clozure.com/ccl-documentation.html#The-Interface-Translator 
 > to build new interfaces.

That's a bit more complicated that one might wish (which is why we  
bundle interfaces...)









More information about the Openmcl-devel mailing list