Some questions about relocatable packages:
1) Is possible install gnustep-base in other place than USER, LOCAL, SYSTEM,...? On wiki say that I can use my own GNUstep.conf file. But even when I point other directory to install this (on my personal dir), when I type "make install", I get the error:
/usr/bin/install: can't delete «/usr/GNUstep/System/Library/Makefiles/Additional/base.make»: Permission denied
make: *** [before-install] Error 1
Even when I try GNUSTEP_INSTALLATION_DOMAIN=USER. Need I an special configuration to gnustep-make when build Base?
2) I suppose that GUI and Back don't need an special configuration, right?
3) What about my app, Need I build this with an special configuration? Or need an special configuration to gnustep-make when build the app?
Hi German
there are lots of options to relocate things - in fact, so many options it may become confusing! ;-)
Reading your email I got the impression that you are trying to install the entire GNUstep into your own user
directory ... maybe not to conflict with an already installed one, or maybe because you don't have root access to the box ?
You can do that - I do it all the times and often have three or four different and independent GNUstep installations in my home directory :-)
To do it, the key is how you configure gnustep-make. For example, to install all of gnustep into
/home/nicola/local-gnustep/, here is what I do:
cd core/make
./configure --prefix=/home/nicola/local-gnustep --with-config-file=/home/nicola/local-gnustep/GNUstep.conf
make
make install
. /home/nicola/local-gnustep/System/Library/Makefiles/GNUstep.sh
cd ../base
./configure
make -j 2
make -j 2 install
cd ../gui
./configure
make -j 2
make -j 2 install
cd ../back
./configure
make -j 2
make -j 2 install
(I'm using '-j 2' to enable a bit of parallelism, but not too much - should work fine in all recent CPUs. If you are building inside a Virtual Machine with limited resources it is sometimes better to omit it. If you have a newer CPU, you should probably ramp that up to '-j 4'; if a large server, you are probably fine with just '-j').
After that, you have your local GNUstep installation in /home/nicola/local-gnustep. When you use it, anything you install
will be installed in there, and you can use things from there. To use it, you just need to run
. /home/nicola/local-gnustep/System/Library/Makefiles/GNUstep.sh
and, most likely,
su -c '/home/nicola/local-gnustep/Local/Tools/gdomap -p'
at the beginning to start gdomap.
If you have more than one GNUstep installation, you have to be careful about avoiding conflicts between installations.
If you have a few GNUstep installations in your home directory like that one that I described, you can easily switch between them as follows:
. /home/nicola/local-gnustep/System/Library/Makefiles/GNUstep-reset.sh
. /home/nicola/local-gnustep/System/Library/Makefiles/GNUstep.sh
the first command will remove all shell variables for the previous GNUstep installation you were using (if any). The
second one will set up the environment for using the one in /home/nicola/local-gnustep.
I hope this helps! :-)
Thanks