2. Summary
In order to compile the libraries, you need to compile and install
the following packages first (if you don't already have them):
- gcc (Version 2.95 or greater, 3.0.4 or greater recommended)
- GNU make (Version 3.75 or greater)
- gdb (Version 6.0 or greater recommended), if you plan to do any debugging
You may also need to install some of the following libraries and
packages described below. Most of these packages are optional, but some
are required.
- `ffcall libraries (HIGHLY RECOMMENDED)'
- This is a library that provides stack-frame handling for NSInvocation
and NSConnection. This library is highly recommended. The previous
builtin method for stack frame handling is no longer supported and may
be removed in the future. ffcall is under GNU GPL. As a special
exception, if used in GNUstep or in derivate works of GNUstep, the
included parts of ffcall are under GNU LGPL.
- `libffi library (ALTERNATIVE RECOMMENDATION)'
- This is a library that provides stack frame handling for NSInvocation
and NSConnection similar to ffcall.
Use this instead of ffcall. You don't need both.
- `libxml2 (RECOMMENDED)'
- The libxml library (Version 2) is used to translate some of the
documentation for GNUstep and to provide suport for MacOS-X compatible
XML-based property-lists. It is recommended but not currently required.
- `libxslt (OPTIONAL)'
- Stylesheet support for use with XML.
- `openssl (OPTIONAL)'
- The openssl library is used to provide support for https connections by
the NSURL and HSURLHandle classes. This functionality is
compiled as a separate bundle since the OpenSSL license is not
compatible with GPL, and in the hopes that if someone writes an openssl
replacement, it can quickly be used by creating another bundle.
- `libiconv (OPTIONAL)'
- Note: Do not install this library unless you are sure you need it.
You probably don't need it except perhaps on MinGW.
Unicode support functions (iconv) come with glibc version 2.1 or greater. If
you don't have glibc (try iconv --version), you can get the separate
libiconv library from
http://clisp.cons.org/~haible/packages-libiconv.html. However,
neither one is required to use GNUstep.
- `The TIFF library (libtiff) (Version 3.4beta36 or greater) (REQUIRED)'
- The GUI library uses this to handle loading and saving TIFF images.
- `The JPEG library (libjpeg) (RECOMMENDED)'
- The GUI library uses this to handle loading JPEG images.
- `The PNG library (libpng) (RECOMMENDED)'
- The GUI library uses this to handle loading PNG images.
- `libaudiofile (RECOMMENDED)'
- The GUI library uses this for the sound server
- `freetype2 (RECOMMENDED, REQUIRED for art backend)'
- This is used for font information
- `libart_lgpl2 (REQUIRED for art backend only)'
- Drawing library for the art backend.
- `WindowMaker (Version >= 0.62) (OPTIONAL)'
- GNUstep and WindowMaker work together to provide a consistant interface.
Although it is not required, GNUstep will work much better if you use it
with the WindowMaker window manager.
Get WindowMaker from http://www.windowmaker.org.
- `gnustep-objc package (for gcc version < 3.0 ONLY) (RECOMMENDED)'
- Note: Do not install this library unless you are sure you need it.
You probably don't need it except on MinGW.
This is a special version of the Objective-C runtime that include several
bug fixes and features that were not in gcc versions previous to 3.0.
It is available at ftp://ftp.gnustep.org/pub/gnustep/libs which
compiles using the GNUstep Makefile package (so you don't have to get the
entire gcc dist). Make sure to set the THREADING variable in the GNUmakefile.
It's possible to compile the library static (make shared=no) and
just copy to the place where the gcc libobjc library is (type gcc -v to
get this location). Note you have to install gnustep-make (below) before
installing this library.
- `GDB (OPTIONAL)'
- GDB can be obtained from ftp://ftp.gnu.org/gnu/gdb. As of release
6.0, gdb has special support for debugging Objective-C programs.
- `TeX (OPTIONAL)'
- You need a TeX implementation, like tetex, to compile some of the
documentation (although most of that is available on the web).
This document was generated
by root on July, 28 2004
using texi2html