[racket] copy-shared-files and different platforms

From: Jens Axel Søgaard (jensaxel at soegaard.net)
Date: Mon Aug 25 12:50:24 EDT 2014

>> Am I missing something?
>
> Does it work if you install the package in installation scope, instead
> of user scope?

Yes! Using

     ./raco pkg install --scope installation poppler-i386-macosx

from the command line worked. And later I saw that the GUI also
allows one to choose installation scope in settings.

> I think the problem is "@loader_path/libgio-2.0.0.dylib" and similar
> references in the ".dylib" files. That is, the
> "libpoppler-glib.8.dylib" library is found by `ffil-lib`, but the load
> fails because libraries referenced by "libpoppler-glib.8.dylib" are not
> found in the expected location.

This problem is luckily restricted to a fairly small set of libraries.

> The "@loader_path" references mean that the shared libraries as
> currently compiled work only when installed in the same scope as the
> `racket/draw` libraries. Offhand, I don't have a good idea for solving
> this problem. (FWIW, Windows installations won't have this problem.)

I have yet to test on Windows.

Thanks for the help,
Jens Axel

Posted on the users mailing list.