I think it's related http://forums.newspeaklanguage.org/index.php?topic=88.0
On Wed, Sep 30, 2009 at 06:13, John M McIntosh <[email protected]> wrote: > Someone finally managed to fire up a Sophie app http://www.opensophie.org/ > on Snow Leopard and immediately found an issue that also affects > Squeak users who do fascinating things with FFI > The innocent FFI call was > > apifstat: afileNo statBuffer: buffer > <cdecl: long 'fstat' (long MacStat* ) module: 'libc.dylib'> > ^self externalCallFailed > > Now it seems BEFORE Snow Leopard *somehow* the Squeak external > primitive call api which is part of the VM to assist in loading > plugins or finding function entry points in executable binaries or > libraries would > return the entry point for fstat by *somehow* finding libc.dylib which > is via /usr/lib/libc.dylib -> libSystem.dylib -> libSystem.B.dylib > > Interestingly this is found implicitly since the mac carbon vm lookup > logic never looks in /usr/lib/ > > Now in Snow Leopard it seems they do less implicit searching, perhaps > a security concern? Then it fails. > > In the past the Unix VM would search a hundred(sic) more places, but I > understand less today, but it might still work? Maybe /usr/lib is in > the hit list? > > This issue also applies to Alien because it calls back to the VM for > it to find the module and function entry point. > > Since I have received a request to ensure that doing an explicit full > path should be allowed in the squeak carbon macintosh vm. > Then a change would be: > > apifstat: afileNo statBuffer: buffer > <cdecl: long 'fstat' (long MacStat* ) module: '/usr/lib/libc.dylib'> > ^self externalCallFailed > > I'll look at doing this shortly. > > However the workaround is to go to Sophie.app/Contents/Resources > and do a ln -s /usr/lib/libc.dylib libc.dylib > to create a symbolic link in the Resources directory for libc.dylib > since we do explicitly look for libc.dylib in the Resources directory. > > Obviously if you have a FFI call like above where you are calling a > system library Oracle? for example. > You might find it no longer works with Snow Leopard on the Macintosh, > so you should check. > > > -- > = > = > = > ======================================================================== > John M. McIntosh <[email protected]> Twitter: > squeaker68882 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > = > = > = > ======================================================================== > > > > > > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
