Dependencies

From GNUstepWiki

(Difference between revisions)
Revision as of 15:39, 24 January 2009
Geroldr (Talk | contribs)
GNUstep-gui
← Previous diff
Current revision
Geroldr (Talk | contribs)
GNUstep-base
Line 10: Line 10:
''' Required ''' ''' Required '''
-* [http://gcc.gnu.org/ GCC with ObjC support] -- preferably version 4.x+* [http://gcc.gnu.org/ GCC with ObjC support] -- preferably version 4.x, 2.95 minimum (with gnustep-supplied libobjc)
* [http://www.gnu.org/software/make/make.html GNU make] -- called ''gmake'' or ''gnumake'' on some systems * [http://www.gnu.org/software/make/make.html GNU make] -- called ''gmake'' or ''gnumake'' on some systems
Line 16: Line 16:
* [http://www.gnu.org/software/gdb/ gdb] -- for debugging * [http://www.gnu.org/software/gdb/ gdb] -- for debugging
* [http://www.windowmaker.info/ Window Maker] -- this would install a lot of dependencies beforehand * [http://www.windowmaker.info/ Window Maker] -- this would install a lot of dependencies beforehand
- 
- 
= GNUstep-base = = GNUstep-base =
-''' Required '''http://www.avahi.org/+''' Required '''
* GNUstep-make * GNUstep-make
* [http://sources.redhat.com/libffi/ libffi-dev (libffi)] currently recommended default '''or''' [http://www.haible.de/bruno/packages-ffcall.html ffcall] -- stack-frame handling * [http://sources.redhat.com/libffi/ libffi-dev (libffi)] currently recommended default '''or''' [http://www.haible.de/bruno/packages-ffcall.html ffcall] -- stack-frame handling
''' Recommended development kit dependencies''' ''' Recommended development kit dependencies'''
 +* [http://site.icu-project.org/ libicu-dev (icu)] -- for International Components for Unicode
* [http://xmlsoft.org/ libxml2-dev (xml2)] -- for XML-based property-lists * [http://xmlsoft.org/ libxml2-dev (xml2)] -- for XML-based property-lists
* [http://xmlsoft.org/XSLT/ libxslt1-dev (xslt)] -- for style sheet support for use with XML * [http://xmlsoft.org/XSLT/ libxslt1-dev (xslt)] -- for style sheet support for use with XML
Line 40: Line 39:
* [http://www.swox.com/gmp/ libgmp] -- arbitrary precision arithmetic -run 'make check' if building yourself to assure you are getting appropriate results. * [http://www.swox.com/gmp/ libgmp] -- arbitrary precision arithmetic -run 'make check' if building yourself to assure you are getting appropriate results.
* libgnutls -- provides Transport Layer Security -- TLS 1.0 and SSL 3.0 protocols (libgnutls-dev) * libgnutls -- provides Transport Layer Security -- TLS 1.0 and SSL 3.0 protocols (libgnutls-dev)
-* libbfd -- universal "Binary File Descriptor" library, part of [http://www.gnu.org/software/binutils/ GNU binutils]+* libbfd -- universal "Binary File Descriptor" library, part of [http://www.gnu.org/software/binutils/ GNU binutils] (binutils-dev)
* [http://developer.apple.com/opensource/internet/bonjour.html mDNSResponder] -- for [http://www.apple.com/macosx/features/bonjour/ Bonjour] service discovery, as implemented by [[NSNetServices]] and [[NSNetServiceBrowser]] Search for libavahi under Ubuntu and Debian for the equivalent. See http://www.avahi.org/ for additional details. * [http://developer.apple.com/opensource/internet/bonjour.html mDNSResponder] -- for [http://www.apple.com/macosx/features/bonjour/ Bonjour] service discovery, as implemented by [[NSNetServices]] and [[NSNetServiceBrowser]] Search for libavahi under Ubuntu and Debian for the equivalent. See http://www.avahi.org/ for additional details.
Line 76: Line 75:
In Ubuntu and Debian install libcups2-dev will automatically pull in comerr-dev, libkadm55, libkrb5-dev development kits. In Ubuntu and Debian install libcups2-dev will automatically pull in comerr-dev, libkadm55, libkrb5-dev development kits.
-* [http://icns.sourceforge.net/] -- libicns-dev for manipulation of the MacOS icns resource format. This development kit in Ubuntu and Debian will pull in the libicns1 library.+* [http://icns.sourceforge.net/ libicns-dev] for manipulation of the MacOS icns resource format. This development kit in Ubuntu and Debian will pull in the libicns1 library.
* [http://www.68k.org/~michael/audiofile/ libaudiofile] -- sound * [http://www.68k.org/~michael/audiofile/ libaudiofile] -- sound
* [http://www.portaudio.com/ portaudio] -- sound, needs at least portaudio-v19 * [http://www.portaudio.com/ portaudio] -- sound, needs at least portaudio-v19
 +
 +In Ubuntu and Debian installing portaudio19-dev will automatically pull in libasound2-dev, libfreebob0, libjack-dev, libjack0, libjack0.100.0-dev, libportaudio2 development kits.
= GNUstep-back = = GNUstep-back =
-== XLIB ==+GNUstep-back currently supports three separate back-ends (xlib, art and cairo). Windows currently uses its own default backend.
-''' Required '''+''' Required for all back-ends '''
* GNUstep-gui * GNUstep-gui
-''' Recommended '''+''' Required for X11 back-ends '''
-* [http://fontconfig.org/ libXft] -- font API+* [http://www.x.org/wiki/ libxt-dev] --development kit for X11 toolkit intrinsics library
-== ART ==+In Ubuntu and Debian installing the libxt-dev development kit will automatically pull in libice-dev, libsm-dev
-''' Required '''+In Ubuntu and Debian install the libxext-dev development kit to support shared memory and additional X-Windows extensions
-* GNUstep-gui + 
 +''' Recommended for all X11 back-ends '''
 +* [http://fontconfig.org/ libXft] -- Freetype based font drawing API This changes the anti-aliasing of fonts over the default methods.
 + 
 +In Ubuntu and Debian install the libxft-dev development kit.
 + 
 + 
 + 
 +== XLIB ==
 + 
 +As above.
 + 
 +== ART ==
 +'''Required'''
* [http://freetype.sourceforge.net/freetype1/projects.html freetype2] -- TrueType font rendering engine * [http://freetype.sourceforge.net/freetype1/projects.html freetype2] -- TrueType font rendering engine
 +
 +In Ubuntu and Debian install the libfreetype6-dev development kit.
 +
* [http://www.levien.com/libart/ libart_lgpl2] -- 2D graphics supporting * [http://www.levien.com/libart/ libart_lgpl2] -- 2D graphics supporting
-''' Recommended '''+In Ubuntu and Debian install the libart-2.0-dev development kit.
-* [http://fontconfig.org/ libXft] -- font API+
== CAIRO == == CAIRO ==
-''' Required '''+''' Required '''.
-* GNUstep-gui + 
-* [http://www.levien.com/libart/ libart_lgpl2] -- 2D graphics supporting+
-* [http://freedesktop.org/Software/glitz glitz] -- OpenGL image compositing library+
* [http://www.cairographics.org/ cairo] -- PDF 1.4 imaging model * [http://www.cairographics.org/ cairo] -- PDF 1.4 imaging model
-''' Recommended '''+'''Optional'''
-* [http://fontconfig.org/ libXft] -- font API+Cairo supports multiple output devices.
 +* [http://freedesktop.org/Software/glitz glitz] -- OpenGL image compositing library
 +In Ubuntu and Debian installing the libglitz-glx1-dev development kit will pull in libgl1-mesa-dev, libglitz1-dev, mesa-common-dev, xlibmesa-gl-dev
= Documentation = = Documentation =

Current revision

The following is the current (as of December 27, 2006) list of direct dependencies for GNUstep.

Note :

  • some of these dependencies are dependent of each other (e.g. tiff requires jpeg, and libungif requires freetype2)
  • each of these dependencies may require additional libraries, which are not listed here
  • the given names may not accurately reflect the actual package name as provided by your system


Contents

GNUstep-make

Required

  • GCC with ObjC support -- preferably version 4.x, 2.95 minimum (with gnustep-supplied libobjc)
  • GNU make -- called gmake or gnumake on some systems

Optional

  • gdb -- for debugging
  • Window Maker -- this would install a lot of dependencies beforehand

GNUstep-base

Required

Recommended development kit dependencies

The recommended and optional development kit packages in Debian and Ubuntu will pull in the compiled libraries for you as a dependancy. Selecting only the run-time library will generate a configure warning. If you continue with 'make', then the noted library functionalities will be missing in your final executable.

The remaining references give only the typical library name.

Optional

  • libiconv -- Unicode support, only install if not provided by your system. Note the GNU 'C' library (libc6-dev) provides the required functionality on all recent GNU/Linux systems
  • libgmp -- arbitrary precision arithmetic -run 'make check' if building yourself to assure you are getting appropriate results.
  • libgnutls -- provides Transport Layer Security -- TLS 1.0 and SSL 3.0 protocols (libgnutls-dev)
  • libbfd -- universal "Binary File Descriptor" library, part of GNU binutils (binutils-dev)
  • mDNSResponder -- for Bonjour service discovery, as implemented by NSNetServices and NSNetServiceBrowser Search for libavahi under Ubuntu and Debian for the equivalent. See http://www.avahi.org/ for additional details.

Selecting libavahi-compat-libdnssd-dev in Ubuntu or debian will automatically add libavahi-client-dev, libavahi-common-dev,libdbus-1-dev development kits.

GNUstep-gui

Required

  • GNUstep-base
  • tiff -- Tag Image File Format (TIFF) support for image data

In Ubuntu and Debian the development kit libtiff4-dev automatically pulls in libjpeg62-dev and libtiffxx0c2.

Recommended

  • jpeg -- Joint Photographic Experts Group (JPEG) lossy image data compression support

In Ubuntu and Debian install the libjpeg62-dev development kit.

  • png -- Portable Network Graphics (PNG) support

In Ubuntu and Debian install the libpng12-dev development kit.

Optional

  • libungif -- for reading and writing GIF images

In Ubuntu and Debian are transitioning to the libgif-dev instead of the older libungif4-dev development kit.

In Ubuntu and Debian install the libaspell-dev development kit.

In Ubuntu and Debian install libcups2-dev will automatically pull in comerr-dev, libkadm55, libkrb5-dev development kits.

  • libicns-dev for manipulation of the MacOS icns resource format. This development kit in Ubuntu and Debian will pull in the libicns1 library.
  • portaudio -- sound, needs at least portaudio-v19

In Ubuntu and Debian installing portaudio19-dev will automatically pull in libasound2-dev, libfreebob0, libjack-dev, libjack0, libjack0.100.0-dev, libportaudio2 development kits.

GNUstep-back

GNUstep-back currently supports three separate back-ends (xlib, art and cairo). Windows currently uses its own default backend.

Required for all back-ends

  • GNUstep-gui

Required for X11 back-ends

  • libxt-dev --development kit for X11 toolkit intrinsics library

In Ubuntu and Debian installing the libxt-dev development kit will automatically pull in libice-dev, libsm-dev

In Ubuntu and Debian install the libxext-dev development kit to support shared memory and additional X-Windows extensions

Recommended for all X11 back-ends

  • libXft -- Freetype based font drawing API This changes the anti-aliasing of fonts over the default methods.

In Ubuntu and Debian install the libxft-dev development kit.


XLIB

As above.

ART

Required

  • freetype2 -- TrueType font rendering engine

In Ubuntu and Debian install the libfreetype6-dev development kit.

In Ubuntu and Debian install the libart-2.0-dev development kit.

CAIRO

Required .

  • cairo -- PDF 1.4 imaging model

Optional Cairo supports multiple output devices.

  • glitz -- OpenGL image compositing library

In Ubuntu and Debian installing the libglitz-glx1-dev development kit will pull in libgl1-mesa-dev, libglitz1-dev, mesa-common-dev, xlibmesa-gl-dev

Documentation