I am trying to change JNIPort such that it uses NativeBoost instead of Alien.
The first problem I ran into is that I can't load a function from the Java
VM library libclient.dylib on OS X 10.8.5 in Pharo 2.0. I am using the 1.6.0
JDK from Apple, and libclient.dylib is an i386 (i.e. 32 bit) library. The
following expression answers nil:

    NativeBoost
        loadFunction: 'JNI_CreateJavaVM_Impl'
        from:
'/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Libraries/libclient.dylib'

The same happens when I copy libclient.dylib to the working directory and do
not specify a path. The only way to produce a different behavior is copying
the library into the Pharo2.0.app bundle and put it in the directory
Pharo2.0.app/Contents/MacOS/Plugins. Then, executing

    NativeBoost loadFunction: 'JNI_CreateJavaVM_Impl' from:
'libclient.dylib'

crashes Pharo when attempting to load the library:

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Codes: EXC_I386_GPFLT

Application Specific Information:
dyld: in dlopen()
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib         0x03f34a6a __pthread_kill + 10
1   libsystem_c.dylib             0x03df0b2f pthread_kill + 101
2   libsystem_c.dylib             0x03e27631 abort + 168
3   org.pharo.Pharo               0x0019f04a error + 138
4   ???                           0xffffffff 0 + 4294967295
5   libdyld.dylib                 0x03da5be9
getPerThreadBufferFor_dlerror(unsigned int) + 108
6   dyld                           0x8fe87076 dlerrorSet(char const*) + 47
7   dyld                           0x8fe8454c dlopen + 533
8   libdyld.dylib                 0x03da5dbe dlopen + 68
9   org.pharo.Pharo               0x001a1d65 tryLoadingInternals + 293

Any ideas what is wrong?

Joachim Geidel 



--
View this message in context: 
http://forum.world.st/NativeBoost-Can-t-load-function-on-OS-X-10-8-5-tp4708359.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.

Reply via email to