Updates for version 0.5.0

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2763 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Adam Fedor 1998-03-02 16:31:00 +00:00
parent d9212b5293
commit 736fdfa8a2
8 changed files with 627 additions and 105 deletions

View file

@ -1,7 +1,7 @@
Announcement
************
The GNUstep Base Library, version 0.4.0, is now available.
The GNUstep Base Library, version 0.5.0, is now available.
What is the GNUstep Base Library?
=================================
@ -23,7 +23,7 @@ implemented as wrappers around more featureful GNU classes.
Where can you get it? How can you compile it?
==============================================
The gstepbase-0.4.0.tar.gz distribution file has been placed on
The gstepbase-0.5.0.tar.gz distribution file has been placed on
`ftp.gnu.org' in `pub/gnu'.
The library requires gcc 2.8.0 or higher. Significant sections of

View file

@ -1,3 +1,10 @@
Mon Mar 2 10:04:57 1998 Adam Fedor <fedor@doc.com>
* Version: Version 0.5.0.
* ANNOUNCE, NEWS, GNUstep-HOWTO: Update.
* doc/faq.tmpl.texi, doc/gnustep-howto.tmpl.texi,
doc/news.tmpl.texi: Likewise.
Thu Feb 26 12:49:10 1998 Adam Fedor <fedor@doc.com>
* configure.in: Use AC_CHECK_HEADERS instead of AC_CHECK_HEADER.

View file

@ -40,8 +40,8 @@ which to find GNUstep information without hype.
@item @b{What is GNUstep?}
GNUstep is the Free Software Foundation's effort to implement NeXT
Software Inc.'s OpenStep Standard. The project is not finished, however
some components are useable now.
Software Inc.'s (now Apple) OpenStep Standard. The project is not
finished, however some components are useable now.
The GNUstep project consists of the following sub-projects:
@ -128,6 +128,20 @@ He has been involved and hacking in the NeXT community since NeXTSTEP
version 0.8; he has been working on GNU Objective C and the Base Library
since 1993.
@item Scott Christley @email{scottc@@net-community.com} is in charge of
the GUI library and the InterfaceModeler project, which is currently in
the design stages. He is also the maintainer of the Objective-C
language and runtime for GCC.
@item Richard Frith-Macdonald @email{richard@@brainstorm.co.uk} is
responsible in large part for the distributed objects system as well as
many other classes in the GNUstep base library.
@item Ovidiu Predescu @email{ovidiu@@net-community.com} is doing a lot of work
on the GUI and XDPS backend, wrote the Makefile package, and also, along
with Mircea Ion Oancea wrote the Foundation extensions and the alternate
Foundation library libFoundation.
@item Pascal Forget @email{pascal@@wsc.com} is working on the GUI
Library in conjunction with Scott Christley. He has worked with Randy
Chapman's DisplayGhostScript and X Windows as a GNUstep GUI backend.
@ -136,11 +150,6 @@ Chapman's DisplayGhostScript and X Windows as a GNUstep GUI backend.
on the GNUstep DisplayGhostScript Server, adding DPS extensions to
GhostScript, including pswrap work.
@item Scott Christley @email{scottc@@net-community.com} is in charge of
the GUI library and the InterfaceModeler project, which is currently in
the design stages. He is also the maintainer of the Objective-C
language and runtime for GCC.
@end itemize
There are many others who have made significant contributions to
@ -167,9 +176,7 @@ Please send corrections to the FAQ maintainer.
There is a WWW site at @url{http://www.gnustep.org}, (and its mirror
@url{http://www.NMR.EMBL-Heidelberg.DE/gnustep}, that contains many
useful pointers. The technical information in this FAQ may be more up
to date than the WWW pages since this FAQ is maintained directly by the
people who are developing GNUstep code.
useful pointers.
There are several mailing lists:
@ -201,9 +208,10 @@ may be invited to join. We apologize in advance, but, for the sake of
efficient communication, the list is not open to people who are not
actively contributing significant coding work to the project; don't
bother asking to be added unless you have already been in contact with
Andrew McCallum about source code contributions. If you would like to
make code contributions, by all means, contact McCallum. This list is
maintained by McCallum @email{mccallum@@gnu.ai.mit.edu}.
Adam Fedor about source code contributions. If you would like to make
code contributions, by all means, contact Adam. This list is maintained
by Adam @email{fedor@@gnu.org} and Andrew McCallum
@email{mccallum@@gnu.org}.
@end itemize
@ -211,13 +219,8 @@ maintained by McCallum @email{mccallum@@gnu.ai.mit.edu}.
@item @b{What is the current state of the project? When can I expect it to be completed?}
The Base Library is about 90 percent done. Significant useful work can
already be done using the library. The GUI library is about 45
percent done. It is going through a major transition at the moment
to coordinate work from multiple developers, DisplayPostscript, and
the non-OpenStep objcX library into a single package that will be made
available to the public. The DisplayPostscript and drawing support
is also in transition.
already be done using the library. The GUI library is about 65
percent done.
More detailed information about the state of each of the sub-projects
can be found at the above mentioned web sites.
@ -325,10 +328,11 @@ library. It can be obtained from @url{ftp://prep.ai.mit.edu/pub/gnu},
or any other mirror of the GNU archives. As far as I know, the GNU
Objective C Runtime runs on all, platforms on which GCC runs.
GCC version 2.7.2 does not contain the thread-safe features, but GCC version 2.8.0 will. A patch for thread-safe features is provided
with the latest developer snaphots of the GNUstep Base Library. There
are currently thread-safe backends for DEC OSF/1, Solaris, IRIX, Linux, and
WindowsNT. Volunteers are solicited for writing additional back-ends.
GCC version 2.8.0 or later is required for GNUstep. You can also use
egcs version 1.0.1 or later. Both compilers should contain the
thread-safe features. There are currently thread-safe backends for DEC
OSF/1, Solaris, IRIX, Linux, and WindowsNT. Volunteers are solicited
for writing additional back-ends.
@item @b{Does it allow a mixture of Objective C and C++}
@ -337,7 +341,7 @@ containing both Objective C and C++. People at Cygnus have mentioned
that they would be willing to do the work---if they were paid for it, of
course. Several people are interested in seeing this happen. Send
email to @samp{discussion@@gnustep.org} and
@samp{gnu-objc@@prep.ai.mit.edu} if you are interesting in pushing this
@samp{gnu-objc@@gnu.org} if you are interesting in pushing this
issue, so that the efforts of all those people interested can be
coordinated.
@ -361,10 +365,6 @@ contains more information about GNU Objective C.
@include base-desc.texi
There is more (although perhaps out-of-date) information available at
the GNUstep Base Library homepage at
@url{http://www.cs.rochester.edu/u/mccallum/gnustep-base}.
@item @b{What is its current state of development?}
@ -490,21 +490,21 @@ as NeXT's; be warned, however, that they are not compatible with each
other. They have different class heirarchies, different instance
variables, different method names, different implementation strategies
and different network message formats. You cannot communicate with a
NeXT NXConnection using a GNU Connection.
NeXT NSConnection using a GNU Connection.
Here are some differences between GNU distributed objects and NeXT's
distributed objects: NXConnection creates NXProxy objects for local
distributed objects: NSConnection creates NSProxy objects for local
objects as well as remote objects; GNU Connection doesn't need and
doesn't create proxies for local objects. NXProxy asks it's remote
doesn't create proxies for local objects. NSProxy asks it's remote
target for the method encoding types and caches the results; GNU Proxy
gets the types directly from the local GNU "typed selector" mechanism
and has no need for querying the remote target or caching encoding
types. The NXProxy for the remote root object always has name 0 and,
once set, you cannot change the root object of a NXConnection; the GNU
types. The NSProxy for the remote root object always has name 0 and,
once set, you cannot change the root object of a NSConnection; the GNU
Proxy for the remote root object has a target address value just like
all other Proxy's, and you can change the root object as many times as
you like. See the "lacking-capabilities" list below for a partial
list of things that NXConnection can do that GNU Connection cannot.]
list of things that NSConnection can do that GNU Connection cannot.]
Here is a partial list of what the current distributed objects system

View file

@ -79,7 +79,7 @@ FoundationExt.
@section Getting the files
Most of the files needed by GNUstep are available from the following ftp
sites. Except for gcc, gdb, make and libtiff, alpha.gnu.org
sites. Except for gcc, gdb, make and libtiff, alpha.gnu.org and ftp.gnustep.org
should contain the latest versions of all the required
packages.
@ -110,29 +110,32 @@ make-3.75.tar.gz (You need GNU make to compile GNUstep).
gdb-4.16-objc-971112.diff.gz (A patch for easier debugging of Objective-C).
ftp://alpha.gnu.org/gnu/gnustep
tiff-v3.4beta036-tar.gz (The TIFF library), or
tiff-970711.tar.gz
tiff-970711.tar.gz (The TIFF library), or
you can use tiff-v3.4beta036-tar.gz or greater version
ftp://ftp.sgi.com/graphics/tiff/
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnustep.org/pub/gnustep
pcthreads-1.1.0.tar.gz (PCThreads for Linux/GNU Inel x86 systems)
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnustep.org/pub/gnustep
gstep-make-0.4.0.tar.gz (Makefile package)
dgs-970711.tar.gz (The Display Ghostscript distribution)
gstep-base-0.4.0.tar.gz (Foundation)
gstep-gui-0.4.0.tar.gz (AppKit)
gstep-xdps-0.4.0.tar.gz (X11/PostScript backend)
gstep-core-0.5.0.tar.gz (Contains gstep-make, -extensions, -base, -gui, -xdps)
gstep-make-0.5.0.tar.gz (Makefile package)
gstep-base-0.5.0.tar.gz (Foundation)
gstep-gui-0.5.0.tar.gz (AppKit)
gstep-xdps-0.5.0.tar.gz (X11/PostScript backend)
extensions-0.5.0.tar.gz (Foundation extensions)
dgs-0.5.0.tar.gz (The Display Ghostscript distribution)
ftp://ftp.gnu.org/pub/gnu
ftp://ftp.gnustep.org/pub/gnustep
ftp://alpha.gnu.org/gnu/gnustep
libFoundation-0.8.0.tar.gz (Foundation)
libFoundation-0.8.0.tar.gz (Alternate Foundation)
ftp://ftp.gnustep.org/pub/gnustep
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnu.org/pub/gnu
FoundationExt-0.8.1.tar.gz (Foundation extentions (optional))
ftp://ftp.gnu.org/pub/gnu
ftp://alpha.gnu.org/gnu/gnustep
@end example
You may get either one of the Foundations libraries (you only need to
@ -142,14 +145,14 @@ Note that you should get the latest version available, not necessarily
the one listed here. For the more adventurous, and since the project is
still in development, it might be better to get the latest snapshot
located in the snap or snapshot subdirectories at
ftp://alpha.gnu.org/gnu/gnustep or the other appropriate ftp locations.
ftp://alpha.gnu.org/gnu/gnustep/snap or the other appropriate ftp locations.
For the following instructions, some version numbers are replaced by XXX.
You shoule replace the 'X's with the version of the package you have.
@section Compiling and Installing the packages
@subsection Compiling make
@subsection Compiling GNU make
GNU make is required to compile all GNUstep packages.
@ -163,49 +166,6 @@ su root
make install
@end example
@subsection Installing the Makefile package
First decide where you want the GNUstep files to go, and use this as
an argument to configure in the makefile package. If you don't choose
a location, the default is /usr/GNUstep. The example below shows how
to configure the packages for installation in /usr/local/GNUstep.
@example
tar fvxz gstep-make-XXXXXX.tar.gz
cd gstep-make-XXXXXX
./configure --prefix=/usr/local/GNUstep
su root
make install
@end example
If you are using, or intend to compile the GCC Objective-C runtime with
threads, you need to specify the thread package you are using when
running configure:
@example
LIBS=-lpthread; ./configure --prefix=/usr/local/GNUstep
@end example
After this you should add the shell script @file{GNUstep.sh} in the makefile
package to you initialization file (such as @file{.profile}). For instance:
@example
. /usr/local/GNUstep/Makefiles/GNUstep.sh
@end example
in your @file{.profile} file will work. It defines environment variables that
are needed to find GNUstep files and executables. Users of csh need
to change the @file{GNUstep.sh} script so it will work with csh. Read the
@file{README} for more info.
GNUstep packages will automatically install in this directory structure. You
can install other packages (such as gcc) in the same structure if you specify
the GNUstep system root as the prefix when you configure the package.
@example
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
@end example
@subsection Compiling PCThreads
For Linux/GNU systems on Intel x86 processors, the PCThreads library is
@ -336,6 +296,89 @@ make bootstrap
whatever you want.
@end table
@subsection Installing the GNUstep libraries
If you have the gstep-core package, you can make and install all the
GNUstep core packages at one time. If you already have a TIFF library
and a Display Postscript system installed, you can do this following the
example instructions below. If you don't already have a TIFF library or
DPS, you have to do things in a slightly different order.
If you have the separate gstep packages, skip to the next section
(Installing the Makefile package).
First decide where you want the GNUstep files to go, and use this as
an argument to configure. If you don't choose
a location, the default is /usr/GNUstep. The example below shows how
to configure the packages for installation in /usr/local/GNUstep.
If you don't have libtiff or DPS,
first make and install the Makefile package, the TIFF library and DGS,
as shown in the following three sections.
After you have libtiff and DPS/DGS installed, make the core libraries:
@example
tar fvxz gstep-core-XXXXX.tar.gz
cd gstep-core-XXXX
./configure --prefix=/usr/local/GNUstep
make
su root
make install
@end example
With the various GNUstep libraries you can use the various
switches, shared, debug. As in ``make shared=no debug=yes'' (Make sure
you use the same switches for every package you compile, and also when
you install).
Skip to the Additional Instructions sections to finish up installation
of the GNUstep system.
@subsection Installing the Makefile package
Decide where you want the GNUstep files to go, and use this as
an argument to configure in the makefile package. If you don't choose
a location, the default is /usr/GNUstep. The example below shows how
to configure the packages for installation in /usr/local/GNUstep.
@example
tar fvxz gstep-make-XXXXXX.tar.gz
cd gstep-make-XXXXXX
./configure --prefix=/usr/local/GNUstep
make
su root
make install
@end example
If you are using, or intend to compile the GCC Objective-C runtime with
threads, you need to specify the thread package you are using when
running configure:
@example
LIBS=-lpthread; ./configure --prefix=/usr/local/GNUstep
@end example
After this you should add the shell script @file{GNUstep.sh} in the makefile
package to you initialization file (such as @file{.profile}). For instance:
@example
. /usr/local/GNUstep/Makefiles/GNUstep.sh
@end example
in your @file{.profile} file will work. It defines environment variables that
are needed to find GNUstep files and executables. Users of csh need
to change the @file{GNUstep.sh} script so it will work with csh. Read the
@file{README} for more info.
GNUstep packages will automatically install in this directory structure. You
can install other packages (such as gcc) in the same structure if you specify
the GNUstep system root as the prefix when you configure the package.
@example
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
@end example
@subsection Compiling libtiff
You don't need a customized version of libtiff, or necessarily even the
@ -368,12 +411,8 @@ above.
make install
@end example
@subsection Building a Foundation library
With this and the following packages that use the GNUstep makefile
package you can use the various switches,
shared, debug. As in ``make shared=no debug=yes'' (Make sure you use the
same switches for every package you compile, and also when you install).
@subsection Building a Foundation library
If you work with gstep-base:
@ -452,6 +491,19 @@ Compiling:
@section Additional Installation
If you haven't already done so when installing the Makefile package,
you should add the shell script @file{GNUstep.sh} in the Makefile
package to you initialization file (such as @file{.profile}). For instance:
@example
. /usr/local/GNUstep/Makefiles/GNUstep.sh
@end example
in your @file{.profile} file will work. It defines environment variables that
are needed to find GNUstep files and executables. Users of csh need
to change the @file{GNUstep.sh} script so it will work with csh. Read the
@file{README} for more info.
Set up your home GNUstep directory. This is where user defaults are
kept, and in the future, other files may be kept there.

View file

@ -9,11 +9,15 @@ The currently released version of the library is
@itemize @bullet
@item Improvements to the NSInvocation class, from Masatake Yamato
@email{masata-y@aist-nara.ac.jp}.
@email{masata-y@@aist-nara.ac.jp}.
@item Implemented several new OpenStep methods and classes (e.g. NSTask)
and speed improvements for others (NSArray, NSData, NSString),
from Richard Frith-Macdonald @email{richard@brainstorm.co.uk}.
from Richard Frith-Macdonald @email{richard@@brainstorm.co.uk}.
@item gdomap now handles subnet addressing and machines with multiple
IP addresses
from Richard Frith-Macdonald @email{richard@@brainstorm.co.uk}.
@end itemize

455
GNUstep-HOWTO Normal file
View file

@ -0,0 +1,455 @@
Installation
************
GNUstep-HOWTO
Last Update: 2 March 1998
This document explains how to build the different components
of GNUstep.
Copyright (C) 1996 Free Software Foundation, Inc.
Authors: Pascal Forget <pascal@wsc.com>,
Ovidiu Predescu <ovidiu@net-community.com>,
Adam Fedor <fedor@doc.com>.
This file is part of GNUstep.
Introduction
============
This document explains how to build the GNUstep project along with all
the tools required to develop applications with it.
In order to easily compile and debug GNUstep projects, you will need a
modified version of the GNU C compiler gcc and of the GNU debugger gdb.
You will need at least 80Mb of hard disk space in order to compile the
GNUstep project. Luckily, you can delete the object files and the
uncompressed source code after each piece of the project has been
successfully built and installed in order to save some space. The
biggest offender is the gcc compiler, which eats up 50Mb of hard disk
space while it compiles.
Summary
=======
Currently, you pretty much need to get and install the latest versions
of the following packages:
gcc or egcs
gdb and patch to make it work with better Objective-C
GNU make
tiff library
DGS or Adobe DPS
gstep-make
gstep-base or libFoundation
gstep-gui
gstep-xpds
FoundationExt.
Getting the files
=================
Most of the files needed by GNUstep are available from the following ftp
sites. Except for gcc, gdb, make and libtiff, alpha.gnu.org and
ftp.gnustep.org should contain the latest versions of all the required
packages.
`ftp://ftp.gnu.org/pub/gnu'
gcc, gdb, and other GNU tools, and GNUstep public releases
`ftp://ftp.sgi.com/graphics/tiff'
TIFF library
`ftp://alpha.gnu.org/gnu/gnustep'
GNUstep developer releases and snapshots
`ftp://ftp.gnustep.org/pub/gnustep'
All GNUstep releases
You need the following packages of either the version given or any later
version, in order to compile GNUstep.
gcc-2.8.0.tar.gz (The GCC compiler)
ftp://ftp.gnu.org/pub/gnu or from other GNU mirror sites.
You can also use egcs-1.0.1.tar.gz, from ftp://ftp.cygnus.com/pub/egcs
gdb-4.16.tar.gz (The gdb debugger)
make-3.75.tar.gz (You need GNU make to compile GNUstep).
ftp://ftp.gnu.org/pub/gnu or from other GNU mirror sites.
gdb-4.16-objc-971112.diff.gz (A patch for easier debugging of Objective-C).
ftp://alpha.gnu.org/gnu/gnustep
tiff-970711.tar.gz (The TIFF library), or
you can use tiff-v3.4beta036-tar.gz or greater version
ftp://ftp.sgi.com/graphics/tiff/
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnustep.org/pub/gnustep
pcthreads-1.1.0.tar.gz (PCThreads for Linux/GNU Inel x86 systems)
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnustep.org/pub/gnustep
gstep-core-0.5.0.tar.gz (Contains gstep-make, -extensions, -base, -gui, -xdps)
gstep-make-0.5.0.tar.gz (Makefile package)
gstep-base-0.5.0.tar.gz (Foundation)
gstep-gui-0.5.0.tar.gz (AppKit)
gstep-xdps-0.5.0.tar.gz (X11/PostScript backend)
extensions-0.5.0.tar.gz (Foundation extensions)
dgs-0.5.0.tar.gz (The Display Ghostscript distribution)
ftp://ftp.gnu.org/pub/gnu
ftp://ftp.gnustep.org/pub/gnustep
ftp://alpha.gnu.org/gnu/gnustep
libFoundation-0.8.0.tar.gz (Alternate Foundation)
ftp://ftp.gnustep.org/pub/gnustep
ftp://alpha.gnu.org/gnu/gnustep
ftp://ftp.gnu.org/pub/gnu
You may get either one of the Foundations libraries (you only need to
take one of them, not both) gstep-base or libFoundation.
Note that you should get the latest version available, not necessarily
the one listed here. For the more adventurous, and since the project is
still in development, it might be better to get the latest snapshot
located in the snap or snapshot subdirectories at
ftp://alpha.gnu.org/gnu/gnustep/snap or the other appropriate ftp
locations.
For the following instructions, some version numbers are replaced by
XXX. You shoule replace the 'X's with the version of the package you
have.
Compiling and Installing the packages
=====================================
Compiling GNU make
------------------
GNU make is required to compile all GNUstep packages.
cd /usr/src
tar fvxz make-XXX.tar.gz
cd make-XXX
./configure
make
su root
make install
Compiling PCThreads
-------------------
For Linux/GNU systems on Intel x86 processors, the PCThreads library is
known to work with GNUstep. PCThreads version 1.1.0 is an enhanced
version of PCThread 1.0.0 with better support for GNUstep.
cd /usr/src
tar fvxz pcthreads-1.1.0.tar.gz
cd pcthreads-1.1.0
./configure
make
su root
make install
If you are using the GNUstep makefile package and wish PCThreads to be
installed with the GNUstep directory structure; then you should specify
the GNUstep system root as the prefix when you configure the package.
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
Compiling GCC
-------------
The following commands assume that all the aforementioned files have
been copied to the /usr/src directory on your machine.
1. Uncompress gcc:
cd /usr/src
tar fvxz gcc-2.8.0.tar.gz
2. Configure the gcc compiler's makefile for your machine:
./configure
If you are using the GNUstep makefile package and wish gcc to be
installed with the GNUstep directory structure; then you should
specify the GNUstep system root as the prefix when you configure
the package.
To enable multiple threads in the Objective-C library use the
-ENABLE-THREADS=LIB argument to configure, where LIB is the
thread library to use or -DISABLE-THREADS to use a
single-threaded Objective-C runtime.
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
4. Compile gcc
make bootstrap
5. Wait
If you have a Pentium Pro, go drink a coffee.
If you have a fast Pentium, count from 0 to 100 in your head.
If you have a slow Pentium, go eat a bagel.
If you have a 486, go watch the news.
If you have a 386, come back tomorrow.
6. Install gcc
su root
make install
7. Delete the gcc directory if you're low on disk space
rm -rf /usr/src/gcc-2.8.0
Patching and Compiling GDB
--------------------------
Uncompress GDB, and patch it:
cd /usr/src
tar fvxz gdb-4.16.tar.gz
gunzip gdb-4.16-objc-971112.diff.gz
cd gdb-4.16
patch -p1 < ../gdb-4.16-objc-971112.diff
Configure, compile and install gdb:
cd /usr/src/gdb-4.16
./configure
make
su root
make install
If you are using the GNUstep makefile package and wish gdb to be
installed with the GNUstep directory structure; then you should
specify the GNUstep system root as the prefix when you configure
the package.
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
4. Make sure gdb is where you think it is
On Linux/GNU, gdb should be installed in /usr/bin, whereas on
other systems, the default installation path is usually
/usr/local/bin. If you have a Linux/GNU box, you can do this:
ln -s /usr/local/bin/gdb /usr/bin/gdb
Note that this is only a suggestion, you are free to do whatever
you want.
Installing the GNUstep libraries
--------------------------------
If you have the gstep-core package, you can make and install all the
GNUstep core packages at one time. If you already have a TIFF library
and a Display Postscript system installed, you can do this following the
example instructions below. If you don't already have a TIFF library or
DPS, you have to do things in a slightly different order.
If you have the separate gstep packages, skip to the next section
(Installing the Makefile package).
First decide where you want the GNUstep files to go, and use this as an
argument to configure. If you don't choose a location, the default is
/usr/GNUstep. The example below shows how to configure the packages
for installation in /usr/local/GNUstep.
If you don't have libtiff or DPS, first make and install the Makefile
package, the TIFF library and DGS, as shown in the following three
sections.
After you have libtiff and DPS/DGS installed, make the core libraries:
tar fvxz gstep-core-XXXXX.tar.gz
cd gstep-core-XXXX
./configure --prefix=/usr/local/GNUstep
make
su root
make install
With the various GNUstep libraries you can use the various switches,
shared, debug. As in ``make shared=no debug=yes'' (Make sure you use
the same switches for every package you compile, and also when you
install).
Skip to the Additional Instructions sections to finish up installation
of the GNUstep system.
Installing the Makefile package
-------------------------------
Decide where you want the GNUstep files to go, and use this as an
argument to configure in the makefile package. If you don't choose a
location, the default is /usr/GNUstep. The example below shows how to
configure the packages for installation in /usr/local/GNUstep.
tar fvxz gstep-make-XXXXXX.tar.gz
cd gstep-make-XXXXXX
./configure --prefix=/usr/local/GNUstep
make
su root
make install
If you are using, or intend to compile the GCC Objective-C runtime with
threads, you need to specify the thread package you are using when
running configure:
LIBS=-lpthread; ./configure --prefix=/usr/local/GNUstep
After this you should add the shell script `GNUstep.sh' in the makefile
package to you initialization file (such as `.profile'). For instance:
. /usr/local/GNUstep/Makefiles/GNUstep.sh
in your `.profile' file will work. It defines environment variables that
are needed to find GNUstep files and executables. Users of csh need to
change the `GNUstep.sh' script so it will work with csh. Read the
`README' for more info.
GNUstep packages will automatically install in this directory
structure. You can install other packages (such as gcc) in the same
structure if you specify the GNUstep system root as the prefix when you
configure the package.
./configure --prefix=$GNUSTEP_SYSTEM_ROOT
Compiling libtiff
-----------------
You don't need a customized version of libtiff, or necessarily even the
newest one, but the customized version located at the GNUstep ftp sites
will install in the GNUstep directory structure.
cd /usr/src
tar fvxz tiff-XXXXX.tar.gz
cd tiff-XXX
./configure
make
su root
make install
Building DGS
------------
If you have a real Display Postscript system already on your computer,
you don't necessarily need DGS. Linux/GNU michines need DGS. You can
also read the file DGS-HOWTO located at the ftp machines listed above.
tar fvxz dgs-XXXXXX.tar.gz
cd dgs-XXXXXX
./configure
make
su root
make install
Building a Foundation library
-----------------------------
If you work with gstep-base:
cd /usr/src
tar fvxz gstep-base-XXXXXX.tar.gz
cd gstep-base-XXXXXX
./configure
make
su root
make install
On some Linux systems, you may have to change the optimization level
(particularly if you get an error compiling mframe.m):
make OPTFLAG=-O
If you work with libFoundation:
cd /usr/src
tar zxf libFoundation-0.8.0.tar.gz
cd libFoundation-0.8.0/libFoundation
./configure --with-gnustep
make
su root
make install
Building the GUI libraries
--------------------------
Compile the GUI library:
cd /usr/src
tar zxf gstep-gui-XXXXXX.tar.gz
cd gstep-gui
make
su root
make install
Compile the XDPS library:
cd /usr/src
tar zxf gstep-xdps-XXXXXX.tar.gz
cd gstep-xdps
./configure
make
cd Testing
make
Building the Foundation extensions
----------------------------------
The Foundation extensions have some useful features in them. The one
reason you definitely might want to use it is to read in GNUstep model
files which store User Interface structures in ASCII format, and can
also be used to translate NeXT and OpenStep NIB files to GNUstep model
format.
Compiling:
cd /usr/src
tar zxf FoundationExt-XXX.tar.gz
cd extensions
make
su root
make install
Additional Installation
=======================
If you haven't already done so when installing the Makefile package,
you should add the shell script `GNUstep.sh' in the Makefile package to
you initialization file (such as `.profile'). For instance:
. /usr/local/GNUstep/Makefiles/GNUstep.sh
in your `.profile' file will work. It defines environment variables that
are needed to find GNUstep files and executables. Users of csh need to
change the `GNUstep.sh' script so it will work with csh. Read the
`README' for more info.
Set up your home GNUstep directory. This is where user defaults are
kept, and in the future, other files may be kept there.
cd
mkdir GNUstep
Next, set your local time zone. There are three ways to do this, pick
one:
1. Use the dwrite utility to set ``Local Time Zone'' to your local
time zone.
2. Set the TZ environment variable.
3. Create the file
`$GNUSTEP_SYSTEM_ROOT/Libraries/Resources/gnustep/NSTimeZones/localtime'
with the name of the local time zone in it.
Finally, run the tests in the Testing directory. Use the openapp utility
that is part of the GNUstep makefile package (and stored in
`$GNUSTEP_SYSTEM_ROOT/Tools'). Usage is:
openapp [--library-combo=...] application [additional arguments to app]
Good Luck!

10
NEWS
View file

@ -1,17 +1,21 @@
News
****
The currently released version of the library is `0.4.0'.
The currently released version of the library is `0.5.0'.
Noteworthy changes in version `0.5.0'
=====================================
* Improvements to the NSInvocation class, from Masatake Yamato
<masata-y
<masata-y@aist-nara.ac.jp>.
* Implemented several new OpenStep methods and classes (e.g. NSTask)
and speed improvements for others (NSArray, NSData, NSString),
from Richard Frith-Macdonald <richard
from Richard Frith-Macdonald <richard@brainstorm.co.uk>.
* gdomap now handles subnet addressing and machines with multiple IP
addresses from Richard Frith-Macdonald
<richard@brainstorm.co.uk>.
Noteworthy changes in version `0.4.0'
=====================================

View file

@ -5,7 +5,7 @@ GCC_VERSION=2.8.0
# The version number of this release.
MAJOR_VERSION=0
MINOR_VERSION=4
MINOR_VERSION=5
SUBMINOR_VERSION=0
GNUSTEP_BASE_VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${SUBMINOR_VERSION}
VERSION=$(GNUSTEP_BASE_VERSION)