mirror of
https://github.com/gnustep/tools-make.git
synced 2025-04-23 22:33:28 +00:00
Rewritten large parts of installation instructions updating for new installation/configuration system
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@24649 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
49d77e247d
commit
bc907f97ce
3 changed files with 335 additions and 161 deletions
|
@ -1,3 +1,9 @@
|
|||
2007-02-19 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
* Documentation/install.texi: Rewritten large parts to describe
|
||||
the new installation and configuration process.
|
||||
* INSTALL: Regenerated.
|
||||
|
||||
2007-02-18 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
* config-noarch.make.in: Removed the deprecation warnings added
|
||||
|
|
|
@ -13,19 +13,17 @@
|
|||
@section Introduction
|
||||
|
||||
If you are installing this package as part of the GNUstep core
|
||||
libraries, read the file GNUstep-HOWTO for more complete instructions on
|
||||
how to install the entire GNUstep package (including this package).
|
||||
libraries, read the file GNUstep-HOWTO for more complete instructions
|
||||
on how to install the entire GNUstep package (including this package).
|
||||
GNUstep-HOWTO comes with this distribution.
|
||||
|
||||
This should be the first GNUstep package you install. Before installing
|
||||
this package, install ffcall or libffi and any other libraries that GNUstep may
|
||||
need (see the GNUstep-HOWTO). Read and follow the instructions on
|
||||
setting up the GNUstep environement below. Then install gnustep-base.
|
||||
This should be the first GNUstep package you install. Before
|
||||
installing this package, install ffcall or libffi and any other
|
||||
libraries that GNUstep may need (see the GNUstep-HOWTO). Read and
|
||||
follow the instructions on setting up the GNUstep environement below.
|
||||
Then install gnustep-base.
|
||||
|
||||
When you configure additional libraries, make sure you use the same
|
||||
configuration options as with gstep-make.
|
||||
|
||||
Also make sure you've read the machine-specific instructions for your
|
||||
Make sure you've read the machine-specific instructions for your
|
||||
particular operating system and CPU. These instructions come with the
|
||||
GNUstep-HOWTO and are also located at the GNUstep web site at
|
||||
@url{http://www.gnustep.org}.
|
||||
|
@ -38,6 +36,19 @@ make
|
|||
make install
|
||||
@end example
|
||||
|
||||
This will use the default GNUstep filesystem layout (in other words,
|
||||
all of GNUstep will end up installed into /usr/GNUstep). If you are on a
|
||||
Unix system, another popular option is
|
||||
|
||||
@example
|
||||
./configure --with-layout=fhs
|
||||
make
|
||||
make install
|
||||
@end example
|
||||
|
||||
which will use the FHS (in other words, all of GNUstep will end up
|
||||
installed into /usr/local).
|
||||
|
||||
To make and install the documentation:
|
||||
|
||||
@example
|
||||
|
@ -49,27 +60,45 @@ make install
|
|||
@node Configuration, Installation, Introduction, Top
|
||||
@section Configuration
|
||||
|
||||
The GNUstep packages uses the Autoconf mechanism for
|
||||
configuration; it checks some host capabilties which are used by
|
||||
all GNUstep software. To configure just type:
|
||||
The GNUstep packages uses the Autoconf mechanism for configuration; it
|
||||
checks some host capabilties which are used by all GNUstep software.
|
||||
To configure just type:
|
||||
|
||||
@example
|
||||
./configure
|
||||
@end example
|
||||
|
||||
The GNUstep makefile package needs a root directory. If the
|
||||
GNUSTEP_SYSTEM_ROOT environment variable is set then configure will
|
||||
use its value as the root directory. You can also specify the root
|
||||
directory when you run configure with the prefix paramter; the
|
||||
following command makes /usr/local/GNUstep the root directory:
|
||||
The GNUstep makefile package needs to know which filesystem layout to
|
||||
use when installing; this determines the way that various directories
|
||||
in the GNUstep domains (SYSTEM, NETWORK, LOCAL, USER) are mapped to
|
||||
local directories on disk. In the FilesystemLayouts/README file you
|
||||
can find detailed information on filesystem layouts.
|
||||
|
||||
To specify a filesystem layout, use the --with-layout=xxx option. The
|
||||
default is
|
||||
|
||||
@example
|
||||
./configure --prefix=/usr/local/GNUstep
|
||||
./configure --with-layout=gnustep
|
||||
@end example
|
||||
|
||||
If you do not have the GNUSTEP_SYSTEM_ROOT environment variable set
|
||||
and you do not specify a root directory when running configure, then
|
||||
configure will use /usr/GNUstep as the default root directory.
|
||||
which installs GNUstep in /usr/GNUstep using the GNUstep layout (that
|
||||
is, /usr/GNUstep/System, /usr/GNUstep/Local, ~/GNUstep). Another
|
||||
popular option is '--with-layout=fhs' which installs gnustep-make into
|
||||
FHS directories based on /usr/local. Check the FilesystemLayouts for
|
||||
more options.
|
||||
|
||||
If you want to install the same layout but in a different location
|
||||
(for example, /opt/gnustep), you can use --prefix=xxx,
|
||||
|
||||
@example
|
||||
./configure --prefix=/opt/gnustep
|
||||
@end example
|
||||
|
||||
If you're confused and want to see exactly what directories will be
|
||||
used for a certain choice of ./configure flags, have a look at the
|
||||
GNUstep.conf file that is generated by ./configure. It will list the
|
||||
full paths to all the relevant GNUstep directories that would be used
|
||||
if you install the software with that configuration.
|
||||
|
||||
To see more options you can use with configure, type
|
||||
|
||||
|
@ -191,104 +220,163 @@ make install
|
|||
@node Installation, Setup, Configuration, Top
|
||||
@section Installation
|
||||
|
||||
After you configure the GNUstep makefile package, then you need to
|
||||
compile the programs that come with the package. Currently there is
|
||||
only a single C program which needs to be compiled; all of the other
|
||||
files are either shell scripts or makefile fragments, so you can
|
||||
compile and install the makefile package in one step with:
|
||||
After you configure the GNUstep makefile package, you can go straight
|
||||
into installation (there is nothing to compile):
|
||||
|
||||
@example
|
||||
make install
|
||||
@end example
|
||||
|
||||
After you have installed the GNUstep makefile package, there is still
|
||||
some minor administration to be performed. Based upon whether you are
|
||||
setting up the GNUstep environment for a single user or all users on
|
||||
your system, perform the appropriate step below.
|
||||
After you have installed the GNUstep makefile package, there might
|
||||
still be some minor administration to be performed, depending on your
|
||||
configuration.
|
||||
|
||||
@node Setup, , Installation, Top
|
||||
@node Setup, UserDomainSetup, Installation, Top
|
||||
@section Setting up the GNUstep environment
|
||||
|
||||
GNUstep-make will install all programs and libraries in the
|
||||
directories specified by the filesystem layout that you choose.
|
||||
|
||||
In here we explain how to set up your environment so that the
|
||||
operating system can find the programs and libraries in these
|
||||
directories.
|
||||
|
||||
The procedure depends on the type of layout (flattened or
|
||||
non-flattened), and on the amount of advanced options that you want to
|
||||
use.
|
||||
|
||||
@menu
|
||||
* Multi-User::
|
||||
* Single-User::
|
||||
* Flattened::
|
||||
* Non-Flattened::
|
||||
* UserDomainSetup::
|
||||
* MultipleInstallations::
|
||||
@end menu
|
||||
|
||||
@node Multi-User, Single-User, Setup, Setup
|
||||
@subsection Setting up the GNUstep environment for all users
|
||||
@node Flattened, Non-Flattened, Setup, Setup
|
||||
@subsection Flattened (default) Setup
|
||||
|
||||
The GNUstep environment and thus usage of the makefile package is based
|
||||
almost solely upon the GNUSTEP_SYSTEM_ROOT environment variable. So
|
||||
essentially the setup involved is to make sure that the variable is
|
||||
defined for all users. The GNUstep.sh file within the makefile package
|
||||
contains all of the environment variable settings required, so you want
|
||||
to call that shell. Some systems, like GNU/Linux have an
|
||||
@file{/etc/profile.d} directory where scripts can be executed
|
||||
automatically. Just copy GNUstep.sh to this directory for it to
|
||||
work. For other UNIX systems, there might be a system wide script that
|
||||
everyone uses, such as @file{/etc/bashrc}, where you could add
|
||||
lines similar to these:
|
||||
In a flattened setup (the default unless you use the
|
||||
--disable-flattened configure argument), you can use a simple setup
|
||||
where you just need to make sure that the few program and library
|
||||
directories are found by the shell/linker.
|
||||
|
||||
Check the description of your filesystem in FilesystemLayouts to find
|
||||
precise simplified instructions for your layout.
|
||||
|
||||
In general, you need to your GNUSTEP_SYSTEM_TOOLS,
|
||||
GNUSTEP_NETWORK_TOOLS and GNUSTEP_LOCAL_TOOLS to your PATH, and add
|
||||
your GNUSTEP_SYSTEM_LIBRARIES, GNUSTEP_NETWORK_LIBRARIES and
|
||||
GNUSTEP_LOCAL_LIBRARIES to your linker paths (which is /etc/ld.so.conf
|
||||
on GNU/Linux).
|
||||
|
||||
To build software, you also need to set GNUSTEP_MAKEFILES. (PS: This requirement
|
||||
is likely to go away soon)
|
||||
|
||||
@node Non-Flattened, , Flattened, Setup
|
||||
@subsection Non-Flattend (fat binary) Setup
|
||||
|
||||
(Advanced configuration)
|
||||
|
||||
If the setup is non-flattened (ie, fat binary support is enabled)
|
||||
programs and libraries will be installed in appropriate subdirectories
|
||||
so that binaries for different machines/library-combos can coexist.
|
||||
This is the case only if you configure gnustep-make with the option
|
||||
--disable-flattened.
|
||||
|
||||
In this case, the recommended solution for setting up the GNUstep
|
||||
environment is to source the GNUstep.sh file.
|
||||
|
||||
@example
|
||||
# Setup for the GNUstep environment
|
||||
. /usr/GNUstep/System/Library/Makefiles/GNUstep.sh
|
||||
@end example
|
||||
|
||||
This will source in the GNUstep.sh file and set the environment
|
||||
variables; thus making them available for all users. Before executing
|
||||
this script, you can setup a default path for scripts in the
|
||||
makefiles package to use for searching for tools and apps by
|
||||
defining the variable GNUSTEP_PATHLIST (and exporting
|
||||
it). By default, it's set to
|
||||
(change the path to be the path to your GNUstep.sh file on disk.
|
||||
Common cases include /usr/GNUstep/System/Library/Libraries/Makefiles
|
||||
and /usr/local/share/GNUstep/Makefiles)
|
||||
|
||||
You can run this command in your shell every time, or you may want to
|
||||
add the command to your shell startup scripts - either the ones for
|
||||
your own user (for example, @file{.bash_profile} for Bash) or the ones
|
||||
for the whole system (for example, @file{/etc/profile} on GNU/Linux).
|
||||
|
||||
Please note that you need to execute this command both to build
|
||||
software using gnustep-make and to run software installed by
|
||||
gnustep-make.
|
||||
|
||||
@node UserDomainSetup, MultipleInstallations, Setup, Setup
|
||||
@section Setting up your GNUstep User domain
|
||||
|
||||
(Advanced configuration)
|
||||
|
||||
The USER domain is generally expected to be in your home directory;
|
||||
you can use the USER domain to install programs or libraries in your
|
||||
home directory without affecting other users.
|
||||
|
||||
If you want to access programs or libraries installed in your USER
|
||||
domain, then you really need to source GNUstep.sh in all cases (both
|
||||
flattened and non-flattened), as explained in the Non-Flattened
|
||||
section.
|
||||
|
||||
If you want to change the filesystem layout of your USER domain
|
||||
(without reinstalling gnustep-make or affecting other people's USER
|
||||
domains), you can do so at runtime by creating a file called
|
||||
~/.GNUstep.conf (this might have a different name if your filesystem
|
||||
layout specifies otherwise).
|
||||
|
||||
In that file, you can set all the GNUSTEP_USER_* varibles set in
|
||||
GNUstep.conf. Check your GNUstep.conf for a full description. Here
|
||||
is an example in which all the GNUstep domain is moved into
|
||||
~/Test/GNUstep instead of ~/GNUstep:
|
||||
|
||||
@example
|
||||
$GNUSTEP_USER_ROOT:$GNUSTEP_LOCAL_ROOT:$GNUSTEP_SYSTEM_ROOT
|
||||
GNUSTEP_USER_DIR=Test/GNUstep
|
||||
@end example
|
||||
|
||||
which might look something like this:
|
||||
@node MultipleInstallations, , UserDomainSetup, Setup
|
||||
@section Having multiple gnustep-makes installed at the same time
|
||||
|
||||
(Advanced configuration)
|
||||
|
||||
You can install gnustep-make multiple times in different directories
|
||||
by using a different config file for each. But if you do, then you
|
||||
must make sure that you can easily switch the operating system paths
|
||||
from one installation to the other. An easy way to do this is to
|
||||
configure your GNUstep by using GNUstep.sh as explained in the
|
||||
non-flattened instructions.
|
||||
|
||||
Your default gnustep-make installation is the one described in the
|
||||
default GNUstep.conf file for the system; on GNU/Linux this is
|
||||
@file{/etc/GNUstep/GNUstep.conf}. You can create a second one that
|
||||
uses a different config file; for example:
|
||||
|
||||
@example
|
||||
~/GNUstep:/usr/GNUstep/Local:/usr/GNUstep/System
|
||||
./configure --prefix=/opt/mytest --with-config-file=/etc/GNUstep-mytest.conf
|
||||
@end example
|
||||
|
||||
when all is done.
|
||||
When you install, this second instance of gnustep-make will reside in
|
||||
@file{/opt/mytest}, and have @file{/etc/GNUstep-mytest.conf} as config
|
||||
file.
|
||||
|
||||
NB. This path is NOT used by GNUstep tools and applications
|
||||
themselves ... they use a standard function
|
||||
NSSearchPathForDirectoriesInDomains() to locate files instead.
|
||||
|
||||
@node Single-User, , Multi-User, Setup
|
||||
@subsection Setting up the GNUstep environment for a single user
|
||||
|
||||
The GNUstep environment and thus usage of the makefile package is
|
||||
based almost solely upon the GNUSTEP_SYSTEM_ROOT environment variable.
|
||||
So essentially the setup involved is to make sure that the variable is
|
||||
defined for the user. The GNUstep.sh file within the makefile package
|
||||
contains all of the environment variable settings required, so you
|
||||
want to call that shell when the user logs in to the system. Most
|
||||
shells have some file that you read upon login, for example the BASH
|
||||
shell reads the .bash_profile file in the user's home directory. So
|
||||
you can add the following lines to that file:
|
||||
To use this second installation instead of the first one, you only
|
||||
need to set the GNUSTEP_CONFIG_FILE variable to point to the next
|
||||
config file and source GNUstep.sh:
|
||||
|
||||
@example
|
||||
# Setup for the GNUstep environment
|
||||
if [ -f $GNUSTEP_SYSTEM_ROOT/Library/Makefiles/GNUstep.sh ]; then
|
||||
. $GNUSTEP_SYSTEM_ROOT/Library/Makefiles/GNUstep.sh
|
||||
fi
|
||||
export GNUSTEP_CONFIG_FILE=/etc/GNUstep-mytest.conf
|
||||
. /opt/mytest/System/Library/Makefies/GNUstep.sh
|
||||
@end example
|
||||
|
||||
This will source in the GNUstep.sh file and set the environment
|
||||
variables; thus making them available for the user.
|
||||
|
||||
The GNUstep.sh file will set up GNUSTEP_USER_ROOT to the GNUstep
|
||||
subdirectory of the users home directory by default. This may be
|
||||
overridden by a user providing a .GNUsteprc file in their home
|
||||
directory. It may be overridden on a system-wide basis by supplying
|
||||
a .GNUsteprc file in the GNUSTEP_SYSTEM_ROOT directory.
|
||||
To stop using a GNUstep installation, reset your GNUstep environment
|
||||
with the GNUstep-reset.sh script and destroy the variable
|
||||
GNUSTEP_CONFIG_FILE --
|
||||
|
||||
@example
|
||||
# Set up to store GNUstep files directly in my home directory
|
||||
GNUSTEP_USER_ROOT=~
|
||||
. /opt/mytest/System/Library/Makefies/GNUstep-reset.sh
|
||||
unset GNUSTEP_CONFIG_FILE
|
||||
@end example
|
||||
|
||||
After this, you are ready to start using a new one (by setting a new
|
||||
GNSTEP_CONFIG_FILE and then sourcing the GNUstep.sh of the new one).
|
||||
|
||||
@bye
|
||||
|
||||
|
|
226
INSTALL
226
INSTALL
|
@ -5,8 +5,8 @@
|
|||
================
|
||||
|
||||
If you are installing this package as part of the GNUstep core
|
||||
libraries, read the file GNUstep-HOWTO for more complete instructions on
|
||||
how to install the entire GNUstep package (including this package).
|
||||
libraries, read the file GNUstep-HOWTO for more complete instructions
|
||||
on how to install the entire GNUstep package (including this package).
|
||||
GNUstep-HOWTO comes with this distribution.
|
||||
|
||||
This should be the first GNUstep package you install. Before
|
||||
|
@ -15,10 +15,7 @@ libraries that GNUstep may need (see the GNUstep-HOWTO). Read and
|
|||
follow the instructions on setting up the GNUstep environement below.
|
||||
Then install gnustep-base.
|
||||
|
||||
When you configure additional libraries, make sure you use the same
|
||||
configuration options as with gstep-make.
|
||||
|
||||
Also make sure you've read the machine-specific instructions for your
|
||||
Make sure you've read the machine-specific instructions for your
|
||||
particular operating system and CPU. These instructions come with the
|
||||
GNUstep-HOWTO and are also located at the GNUstep web site at
|
||||
`http://www.gnustep.org'.
|
||||
|
@ -29,6 +26,17 @@ GNUstep-HOWTO and are also located at the GNUstep web site at
|
|||
make
|
||||
make install
|
||||
|
||||
This will use the default GNUstep filesystem layout (in other words,
|
||||
all of GNUstep will end up installed into /usr/GNUstep). If you are on
|
||||
a Unix system, another popular option is
|
||||
|
||||
./configure --with-layout=fhs
|
||||
make
|
||||
make install
|
||||
|
||||
which will use the FHS (in other words, all of GNUstep will end up
|
||||
installed into /usr/local).
|
||||
|
||||
To make and install the documentation:
|
||||
|
||||
cd Documentation
|
||||
|
@ -44,17 +52,33 @@ To configure just type:
|
|||
|
||||
./configure
|
||||
|
||||
The GNUstep makefile package needs a root directory. If the
|
||||
GNUSTEP_SYSTEM_ROOT environment variable is set then configure will use
|
||||
its value as the root directory. You can also specify the root
|
||||
directory when you run configure with the prefix paramter; the
|
||||
following command makes /usr/local/GNUstep the root directory:
|
||||
The GNUstep makefile package needs to know which filesystem layout to
|
||||
use when installing; this determines the way that various directories
|
||||
in the GNUstep domains (SYSTEM, NETWORK, LOCAL, USER) are mapped to
|
||||
local directories on disk. In the FilesystemLayouts/README file you
|
||||
can find detailed information on filesystem layouts.
|
||||
|
||||
./configure --prefix=/usr/local/GNUstep
|
||||
To specify a filesystem layout, use the -with-layout=xxx option. The
|
||||
default is
|
||||
|
||||
If you do not have the GNUSTEP_SYSTEM_ROOT environment variable set
|
||||
and you do not specify a root directory when running configure, then
|
||||
configure will use /usr/GNUstep as the default root directory.
|
||||
./configure --with-layout=gnustep
|
||||
|
||||
which installs GNUstep in /usr/GNUstep using the GNUstep layout (that
|
||||
is, /usr/GNUstep/System, /usr/GNUstep/Local, ~/GNUstep). Another
|
||||
popular option is '-with-layout=fhs' which installs gnustep-make into
|
||||
FHS directories based on /usr/local. Check the FilesystemLayouts for
|
||||
more options.
|
||||
|
||||
If you want to install the same layout but in a different location
|
||||
(for example, /opt/gnustep), you can use -prefix=xxx,
|
||||
|
||||
./configure --prefix=/opt/gnustep
|
||||
|
||||
If you're confused and want to see exactly what directories will be
|
||||
used for a certain choice of ./configure flags, have a look at the
|
||||
GNUstep.conf file that is generated by ./configure. It will list the
|
||||
full paths to all the relevant GNUstep directories that would be used
|
||||
if you install the software with that configuration.
|
||||
|
||||
To see more options you can use with configure, type
|
||||
|
||||
|
@ -158,84 +182,140 @@ the make package several times.
|
|||
1.3 Installation
|
||||
================
|
||||
|
||||
After you configure the GNUstep makefile package, then you need to
|
||||
compile the programs that come with the package. Currently there is
|
||||
only a single C program which needs to be compiled; all of the other
|
||||
files are either shell scripts or makefile fragments, so you can
|
||||
compile and install the makefile package in one step with:
|
||||
After you configure the GNUstep makefile package, you can go straight
|
||||
into installation (there is nothing to compile):
|
||||
|
||||
make install
|
||||
|
||||
After you have installed the GNUstep makefile package, there is still
|
||||
some minor administration to be performed. Based upon whether you are
|
||||
setting up the GNUstep environment for a single user or all users on
|
||||
your system, perform the appropriate step below.
|
||||
After you have installed the GNUstep makefile package, there might
|
||||
still be some minor administration to be performed, depending on your
|
||||
configuration.
|
||||
|
||||
1.4 Setting up the GNUstep environment
|
||||
======================================
|
||||
|
||||
1.4.1 Setting up the GNUstep environment for all users
|
||||
------------------------------------------------------
|
||||
GNUstep-make will install all programs and libraries in the directories
|
||||
specified by the filesystem layout that you choose.
|
||||
|
||||
The GNUstep environment and thus usage of the makefile package is based
|
||||
almost solely upon the GNUSTEP_SYSTEM_ROOT environment variable. So
|
||||
essentially the setup involved is to make sure that the variable is
|
||||
defined for all users. The GNUstep.sh file within the makefile package
|
||||
contains all of the environment variable settings required, so you want
|
||||
to call that shell. Some systems, like GNU/Linux have an
|
||||
`/etc/profile.d' directory where scripts can be executed automatically.
|
||||
Just copy GNUstep.sh to this directory for it to work. For other UNIX
|
||||
systems, there might be a system wide script that everyone uses, such
|
||||
as `/etc/bashrc', where you could add lines similar to these:
|
||||
In here we explain how to set up your environment so that the
|
||||
operating system can find the programs and libraries in these
|
||||
directories.
|
||||
|
||||
The procedure depends on the type of layout (flattened or
|
||||
non-flattened), and on the amount of advanced options that you want to
|
||||
use.
|
||||
|
||||
1.4.1 Flattened (default) Setup
|
||||
-------------------------------
|
||||
|
||||
In a flattened setup (the default unless you use the -disable-flattened
|
||||
configure argument), you can use a simple setup where you just need to
|
||||
make sure that the few program and library directories are found by the
|
||||
shell/linker.
|
||||
|
||||
Check the description of your filesystem in FilesystemLayouts to find
|
||||
precise simplified instructions for your layout.
|
||||
|
||||
In general, you need to your GNUSTEP_SYSTEM_TOOLS,
|
||||
GNUSTEP_NETWORK_TOOLS and GNUSTEP_LOCAL_TOOLS to your PATH, and add
|
||||
your GNUSTEP_SYSTEM_LIBRARIES, GNUSTEP_NETWORK_LIBRARIES and
|
||||
GNUSTEP_LOCAL_LIBRARIES to your linker paths (which is /etc/ld.so.conf
|
||||
on GNU/Linux).
|
||||
|
||||
To build software, you also need to set GNUSTEP_MAKEFILES. (PS: This
|
||||
requirement is likely to go away soon)
|
||||
|
||||
1.4.2 Non-Flattend (fat binary) Setup
|
||||
-------------------------------------
|
||||
|
||||
(Advanced configuration)
|
||||
|
||||
If the setup is non-flattened (ie, fat binary support is enabled)
|
||||
programs and libraries will be installed in appropriate subdirectories
|
||||
so that binaries for different machines/library-combos can coexist.
|
||||
This is the case only if you configure gnustep-make with the option
|
||||
-disable-flattened.
|
||||
|
||||
In this case, the recommended solution for setting up the GNUstep
|
||||
environment is to source the GNUstep.sh file.
|
||||
|
||||
# Setup for the GNUstep environment
|
||||
. /usr/GNUstep/System/Library/Makefiles/GNUstep.sh
|
||||
|
||||
This will source in the GNUstep.sh file and set the environment
|
||||
variables; thus making them available for all users. Before executing
|
||||
this script, you can setup a default path for scripts in the makefiles
|
||||
package to use for searching for tools and apps by defining the
|
||||
variable GNUSTEP_PATHLIST (and exporting it). By default, it's set to
|
||||
(change the path to be the path to your GNUstep.sh file on disk.
|
||||
Common cases include /usr/GNUstep/System/Library/Libraries/Makefiles
|
||||
and /usr/local/share/GNUstep/Makefiles)
|
||||
|
||||
$GNUSTEP_USER_ROOT:$GNUSTEP_LOCAL_ROOT:$GNUSTEP_SYSTEM_ROOT
|
||||
You can run this command in your shell every time, or you may want to
|
||||
add the command to your shell startup scripts - either the ones for
|
||||
your own user (for example, `.bash_profile' for Bash) or the ones for
|
||||
the whole system (for example, `/etc/profile' on GNU/Linux).
|
||||
|
||||
which might look something like this:
|
||||
Please note that you need to execute this command both to build
|
||||
software using gnustep-make and to run software installed by
|
||||
gnustep-make.
|
||||
|
||||
~/GNUstep:/usr/GNUstep/Local:/usr/GNUstep/System
|
||||
1.5 Setting up your GNUstep User domain
|
||||
=======================================
|
||||
|
||||
when all is done.
|
||||
(Advanced configuration)
|
||||
|
||||
NB. This path is NOT used by GNUstep tools and applications
|
||||
themselves ... they use a standard function
|
||||
NSSearchPathForDirectoriesInDomains() to locate files instead.
|
||||
The USER domain is generally expected to be in your home directory;
|
||||
you can use the USER domain to install programs or libraries in your
|
||||
home directory without affecting other users.
|
||||
|
||||
1.4.2 Setting up the GNUstep environment for a single user
|
||||
----------------------------------------------------------
|
||||
If you want to access programs or libraries installed in your USER
|
||||
domain, then you really need to source GNUstep.sh in all cases (both
|
||||
flattened and non-flattened), as explained in the Non-Flattened section.
|
||||
|
||||
The GNUstep environment and thus usage of the makefile package is based
|
||||
almost solely upon the GNUSTEP_SYSTEM_ROOT environment variable. So
|
||||
essentially the setup involved is to make sure that the variable is
|
||||
defined for the user. The GNUstep.sh file within the makefile package
|
||||
contains all of the environment variable settings required, so you want
|
||||
to call that shell when the user logs in to the system. Most shells
|
||||
have some file that you read upon login, for example the BASH shell
|
||||
reads the .bash_profile file in the user's home directory. So you can
|
||||
add the following lines to that file:
|
||||
If you want to change the filesystem layout of your USER domain
|
||||
(without reinstalling gnustep-make or affecting other people's USER
|
||||
domains), you can do so at runtime by creating a file called
|
||||
~/.GNUstep.conf (this might have a different name if your filesystem
|
||||
layout specifies otherwise).
|
||||
|
||||
# Setup for the GNUstep environment
|
||||
if [ -f $GNUSTEP_SYSTEM_ROOT/Library/Makefiles/GNUstep.sh ]; then
|
||||
. $GNUSTEP_SYSTEM_ROOT/Library/Makefiles/GNUstep.sh
|
||||
fi
|
||||
In that file, you can set all the GNUSTEP_USER_* varibles set in
|
||||
GNUstep.conf. Check your GNUstep.conf for a full description. Here is
|
||||
an example in which all the GNUstep domain is moved into ~/Test/GNUstep
|
||||
instead of ~/GNUstep:
|
||||
|
||||
This will source in the GNUstep.sh file and set the environment
|
||||
variables; thus making them available for the user.
|
||||
GNUSTEP_USER_DIR=Test/GNUstep
|
||||
|
||||
The GNUstep.sh file will set up GNUSTEP_USER_ROOT to the GNUstep
|
||||
subdirectory of the users home directory by default. This may be
|
||||
overridden by a user providing a .GNUsteprc file in their home
|
||||
directory. It may be overridden on a system-wide basis by supplying a
|
||||
.GNUsteprc file in the GNUSTEP_SYSTEM_ROOT directory.
|
||||
1.6 Having multiple gnustep-makes installed at the same time
|
||||
============================================================
|
||||
|
||||
# Set up to store GNUstep files directly in my home directory
|
||||
GNUSTEP_USER_ROOT=~
|
||||
(Advanced configuration)
|
||||
|
||||
You can install gnustep-make multiple times in different directories
|
||||
by using a different config file for each. But if you do, then you
|
||||
must make sure that you can easily switch the operating system paths
|
||||
from one installation to the other. An easy way to do this is to
|
||||
configure your GNUstep by using GNUstep.sh as explained in the
|
||||
non-flattened instructions.
|
||||
|
||||
Your default gnustep-make installation is the one described in the
|
||||
default GNUstep.conf file for the system; on GNU/Linux this is
|
||||
`/etc/GNUstep/GNUstep.conf'. You can create a second one that uses a
|
||||
different config file; for example:
|
||||
|
||||
./configure --prefix=/opt/mytest --with-config-file=/etc/GNUstep-mytest.conf
|
||||
|
||||
When you install, this second instance of gnustep-make will reside in
|
||||
`/opt/mytest', and have `/etc/GNUstep-mytest.conf' as config file.
|
||||
|
||||
To use this second installation instead of the first one, you only
|
||||
need to set the GNUSTEP_CONFIG_FILE variable to point to the next
|
||||
config file and source GNUstep.sh:
|
||||
|
||||
export GNUSTEP_CONFIG_FILE=/etc/GNUstep-mytest.conf
|
||||
. /opt/mytest/System/Library/Makefies/GNUstep.sh
|
||||
|
||||
To stop using a GNUstep installation, reset your GNUstep environment
|
||||
with the GNUstep-reset.sh script and destroy the variable
|
||||
GNUSTEP_CONFIG_FILE -
|
||||
|
||||
. /opt/mytest/System/Library/Makefies/GNUstep-reset.sh
|
||||
unset GNUSTEP_CONFIG_FILE
|
||||
|
||||
After this, you are ready to start using a new one (by setting a new
|
||||
GNSTEP_CONFIG_FILE and then sourcing the GNUstep.sh of the new one).
|
||||
|
||||
|
|
Loading…
Reference in a new issue