~ubuntu-branches/ubuntu/karmic/gnustep-base/karmic

« back to all changes in this revision

Viewing changes to INSTALL

  • Committer: Bazaar Package Importer
  • Author(s): Eric Heintzmann
  • Date: 2005-04-17 00:14:38 UTC
  • mfrom: (1.2.1 upstream) (2.1.2 hoary)
  • Revision ID: james.westby@ubuntu.com-20050417001438-enf0y07c9tku85z1
Tags: 1.10.3-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
Introduction
2
2
============
3
3
 
4
 
   If you are installing this package as part of the GNUstep core
5
 
packages, read the file GNUstep-HOWTO for more complete instructions on
6
 
how to install the entire GNUstep package (including this library).
 
4
If you are installing this package as part of the GNUstep core packages,
 
5
read the file GNUstep-HOWTO for more complete instructions on how to
 
6
install the entire GNUstep package (including this library).
7
7
GNUstep-HOWTO is located in the gnustep-make package or at
8
8
<http://www.gnustep.org>
9
9
 
10
10
   If you are installing the GNUstep libraries individually, make sure
11
 
you have installed the GNUstep Makefile package (gnustep-make) already.
12
 
In addition you should install an Objective-C library (gnustep-objc)
13
 
if you are not using gcc 3.x, as well some other libraries (notably
14
 
ffcall). See the GNUstep-HOWTO for more information.
 
11
you have installed the GNUstep Makefile package (gnustep-make) already,
 
12
and you have sourced the makefile script:
 
13
     . $GNUSTEP_SYSTEM_ROOT/Library/Makefiles/GNUstep.sh
 
14
   See the GNUstep-HOWTO for more information.
15
15
 
16
16
   After installing this library you should install gnustep-gui if you
17
17
are going to use graphical applications.
20
20
configuration options as with gstep-make. Some additional options to
21
21
configure are described below.
22
22
 
 
23
   Quick installation instructions:
 
24
 
 
25
     ./configure
 
26
     make
 
27
     make install
 
28
 
 
29
   To make and install the documentation:
 
30
 
 
31
     cd Documentation
 
32
     make
 
33
     make install
 
34
 
23
35
Configuration
24
36
=============
25
37
 
26
 
   Configuration is performed by running the `configure' program at a
 
38
Configuration is performed by running the `configure' program at a
27
39
shell prompt. You may want to use some of the optional arguments to the
28
40
`configure' program. Type `configure --help' for a list of these. It is
29
41
not likely that you will need to use the `--prefix' option, since
44
56
Reading Command-Line Arguments
45
57
------------------------------
46
58
 
47
 
   There are two features that change how GNUstep gets access to
 
59
There are two features that change how GNUstep gets access to
48
60
command-line arguments and environment variables (normally passed to
49
61
the program in the `main()' function. These features are
50
62
`--enable-pass-arguments' and the `--enable-fake-main' option(s).
78
90
FFI Library
79
91
-----------
80
92
 
81
 
   GNUstep's NSInvocations and Distributed Objects code involves
82
 
detailed manipulation of the stack and function calls using a library
83
 
that implements a Foreign-Function Interface (FFI), such as the ffcall
84
 
libraries. Use of ffcall is automatically enabled if the ffcall
85
 
libraries are found, unless specifically disabled with
86
 
`--disable-ffcall'.  If disabled, the code reverts to the builtin
87
 
method for stack frame handling, but this rarely works on non-ix86
88
 
machines and is not supported.
 
93
GNUstep's NSInvocations and Distributed Objects code involves detailed
 
94
manipulation of the stack and function calls using a library that
 
95
implements a Foreign-Function Interface (FFI), such as the ffcall or
 
96
libffi libraries. Use of ffcall is automatically enabled if the ffcall
 
97
libraries are found (and the same with libffi, although ffcall takes
 
98
precedence), unless specifically disabled with `--disable-do'.  If
 
99
disabled, the code reverts to the builtin method for stack frame
 
100
handling, but this rarely works on non-ix86 machines and is not
 
101
supported.
89
102
 
90
103
   You need to have the ffcall libraries, which you can get from
91
104
<ftp://www.gnustep.org/pub/gnustep/libs/> or
92
105
<http://clisp.cons.org/~haible/>. You also need to have a special
93
 
version of the Objective-C library (before gcc 3.0 the required hooks
94
 
were not in the standard library). You can get this library from
95
 
<ftp://www.gnustep.org/pub/gnustep/libs/libobjc-1.2.0.tar.gz>.
 
106
version of the Objective-C library if you are not using gcc 3.x (before
 
107
gcc 3.0 the required hooks were not in the standard library). You can
 
108
get this library from <ftp://www.gnustep.org/pub/gnustep/libs>.
 
109
 
 
110
   Support for the libffi library has also been added.  Current versions
 
111
of libffi are only distributed with gcc version 3.x, although it is not
 
112
installed by default. To install it, after you have built gcc, do
 
113
something like:
 
114
     mkdir libffi-build
 
115
     cd libffi-build
 
116
     ../gcc-3.2.1/libffi/configure
 
117
     make
 
118
     ffitest
 
119
     sudo make install
 
120
 
 
121
   To enable this in the gnustep-base library, use the configure option
 
122
`--enable-libffi'.
96
123
 
97
124
OpenSSL
98
125
-------
99
126
 
100
 
   GNUstep base has optional support for using the OpenSSL libraries for
 
127
GNUstep base has optional support for using the OpenSSL libraries for
101
128
secure URL connections (with the NSURL classes). This functionality is
102
129
compiled as a separate bundle since the OpenSSL license is not
103
130
compatible with GPL, and in the hopes that if someone writes an openssl
108
135
Compilation
109
136
===========
110
137
 
111
 
   To compile this library, type make. After this is complete, type make
 
138
To compile this library, type make. After this is complete, type make
112
139
install (make sure you are the root user). Some additional options you
113
140
can use with make are `debug=yes' to make a debugging version of the
114
141
library and `shared=no' to make a static version of the library. See