help-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Distributing gnustep-based software


From: Richard Frith-Macdonald
Subject: Re: Distributing gnustep-based software
Date: Fri, 4 Feb 2005 18:22:22 +0000


On 4 Feb 2005, at 17:39, Sébastien Pierre wrote:


Le 4 févr. 05, à 18:21, Richard Frith-Macdonald a écrit :

do a clean install of make + base, then build and install my program ... then I can make a tar image of the entire /usr/GNUstep tree (my program will be in /usr/GNUstep/Local/Tools).

This seems like a proper way to do what I want :)
However, is there any method to determine unneeded files ? In fact, I would like to distribute my app under Linux, OSX and... Windows, and am really concerned about three things :

1/ Installation should be really straightforward, ideally something like "unpack here" (no environment variable required, or conflicts with existing GNUstep) 2/ Size should be as small as possible. My app is around 1.2Mb on Intel and 2.4Mb on PPC (OSX) 3/ Platform parity: I'm especially concerned about size/efficiency on Windows

Do you think these requirements could be satisfied ?

Not really ... it's going to be big.

If you want it to work on multiple hardware/operating system setups, you will need to configure gnustep with the 'flattened' option turned off, so it has subdirectories to contain system dependent binaries.

If you want a *really* self contained package, you might consider installing any libraries gstep-base uses (libxml2, libiconv on windows, the gcc libraries, the objc runtime library) in the /usr/GNUstep hierarchy, and configuring the base librrary to use those local, versions.

Both those things will make for a very big package ... but if you do that, you can use a small shell script to set the environment to the correct location, hardware, operating-system of the installed package before running your application binary. I've done that for a package to work on both linux/intel and solaris/sparc, so it should work for windows too.

Unless you really need that single package does everything approach, I would recommend having different packages for each platform, and assuming that the default system libxml and gcc libraries will do (you don't need libiconv on most platforms). Probably worth installing your own objc runtime library though.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]