Hi,

On 14 Sep 2016, at 12:19, Ben Coman <btc@openInWorld.com> wrote:

On Wed, Sep 14, 2016 at 4:21 PM, Blondeau Vincent
<vincent.blondeau@worldline.com> wrote:


I try to move the R dll close to my Pharo VM and also inside the
Plugins directory but without success ...

It should be at the same location that libcairo.2.dylib

Is there a way to say where are the R dll instead of copying them ?

Are you using the system to do the library path resolution? Or finding the
library file in Pharo and then passing an absolute path to FFI?

no, it doesn���t��� you need to pass a path to the library (e.g. '/opt/local/lib/libR.so���)


I think that the system that do the resolution:
I defined in a trait:
ffiLibraryName
        ^ #R
And the library is named R.dll (under windows).

Maybe I should do like CairoLibrary?


My limited understanding is that #ffiLibraryName should return a class
rather than a symbol. Thus...

MyClass class >> ffiLibraryName
         ^ R

R >> win32ModuleName
          ^ 'libr.N.dll'.   "or whatever is the actual dll filename���

well��� it can answer a class (a child of FFILibrary, like LibC)
or a String with a fixed path: ���libr.N.dll���

of course, 2nd way is limited because you hardcode the library path :S

cheers,
Esteban




cheers -ben