Thanks, Nicolas (and Sven),
VM search path is what I am looking for (UFFI external modules)
and I am curious whether or not this path
`pharo-vm/lib/pharo/5.0-201806281256` is constant or variable for
the various Pharo versions or does it vary based on the vm
version/build number ... pharo6.0 and pharo.1 appear to have the
same path ... haven't looked at Pharo7.0 ... and hopefully the
path is the same for mac and unix or does it vary ... I don't have
a mac to readily test on:)
The bash script that copies my unix/mac .so/.dylib files will be run immediately after the image and vm have been downloaded so I won't be running the image itself (unless I have to). Currently, the download, installation and build of the pharo client for GemStone is built by a bash script...
I'm going to assume for now that the gci libraries will be shoveled into the pharo-vm/lib/5.0-* directory until someone gives me a more definitive answer...
Dale
Oh, maybe you're after PharoLauncher conventions?
I was talking of underlying VM search path.I remember that the library loading happens in ioLoadModule() both for FFI and external plugins.
Le��ven. 25 janv. 2019 ����18:45, Sven Van Caekenberghe <sven@stfx.eu> a ��crit��:
Maybe FileLocator can help ?
on macOS
FileLocator vmDirectory pathString.
"'/Users/sven/Develop/Pharo/Pharo-Daily/2019-01-24/pharo-vm'"
FileLocator vmBinary pathString.
"'/Users/sven/Develop/Pharo/Pharo-Daily/2019-01-24/pharo-vm/Pharo.app/Contents/MacOS/Pharo'"
on Linux
$ ../bin/pharo Pharo.image eval 'FileLocator vmDirectory pathString'
'/home/t3/pharo/bin/pharo-vm'
$ ../bin/pharo Pharo.image eval 'FileLocator vmBinary pathString'
'/home/t3/pharo/bin/pharo-vm/pharo'
> On 25 Jan 2019, at 18:25, Dale Henrichs <dale.henrichs@gemtalksystems.com> wrote:
>
> Thanks Nicolas,
>
> Is it as simple as pharo/*, or could there be multiple directories created and I need to pick the right one?
>
> Dale
>
> On 1/25/19 12:48 AM, Nicolas Cellier wrote:
>> I'm afraid it also depends on the overly complex rules burried deep inside the VM...
>> It would be a good thing to try and document it.
>> And if we can't reasonably document it, then we might want to open an issue on opensmalltalk.
>>
>> Le ven. 25 janv. 2019 �� 01:51, Dale Henrichs <dale.henrichs@gemtalksystems.com> a ��crit :
>> I am in the process of porting the GemStone-GCI[1] project to Pharo6.1
>> (32 bit) and Pharo7.0 (64 bit) and I'm curious what the naming
>> convention for the library directories are.
>>
>> For Pharo5.0 and earlier, I copied my 32 bit gemstone gci library files
>> (.so on linux) into the pharo-vm directory.
>>
>> For Pharo6.1 I just figured out that I need to copy the gci library
>> files into the pharo-vm/lib/pharo/5.0-201806281256 directory ... at list
>> the libraries are found when I do so?
>>
>> I would like to be able to write a bash script that copies the gci
>> library files into the proper directory, but the directory for the
>> Pharo6.1 vm looks like some kind of magic number and I assume that
>> different builds of the 6.1 vm could have different names and possibly
>> even multiple directories under pharo-vm/lib/pharo/?
>>
>> I haven't looked at Pharo7.0 yet to see what it's pharo-vm directory
>> structure looks like...
>>
>> A pointer to where the naming conventions for these directories is
>> described for Pharo6.x, Pharo7.x and Pharo8.x would be greatly
>> appreciated ... would also be nice if the error message for the "module
>> not found" error could be a bit more descriptive as well ...
>>
>> Thanks,
>>
>> Dale
>>
>> [1] https://github.com/GsDevKit/GemStone-GCI
>>
>>