[plt-scheme] Application distribution mechanisms ...

From: Henk Boom (lunarc.lists at gmail.com)
Date: Wed Jan 7 11:54:34 EST 2009

2009/1/7 Matthew Flatt <mflatt at cs.utah.edu>:
> At Tue, 6 Jan 2009 21:51:47 -0500, "Henk Boom" wrote:
>> 2009/1/6 kumar <kumar_lista at mac.com>:
>> >
>> > I'd like to be able to distribute a scheme app in a small package for
>> > those who already have DrScheme installed.
>> >
>> > There are currently three methods for creating executables in DrScheme -
>> > 1. Create a launcher that loads source files
>> > 2. Create a launcher that uses compiled versions of code.
>> > 3. Create a distribution zip package containing all necessary dlls.
>> I'll go one step in the other direction and suggest that it would be
>> useful to have some automatic way of generating *really* standalone
>> executables. It would be handy for things like ludum dare, where it
>> has to be super-convenient to run your game or people don't bother; I
>> have always had trouble getting the environment set up right so things
>> generated by option 3 above know how to find the included dynamic
>> libraries on Linux.
> Do you mean "libmzscheme3m.so"? Or do you mean other libraries, like,
> say, "libpng.so"?

I mean libmzscheme3m.so, since it is usual for people to have the
other libraries I require to be installed (or easy for them to install
them). I must say that my main problem is having the program not be
able to find these libraries on Linux systems. I would be more precise
about the conditions but I don't have a linux machine without mzscheme
installed handy right now to test.

>> It would also be handy to not be stuck with the
>> bin/ and lib/ directory structure on Linux, since it makes the paths
>> to texture and sound files platform-dependent.
> Are you using `define-runtime-path' to access the files within Scheme?

I didn't know about this function before, it's useful! I'm curious why
DrScheme puts the data files used in lib/plt/<name>/exts/ert/ when
creating a .tgz distribution, what does that path signify?


Posted on the users mailing list.