Dependencies

From GNUstepWiki

(Difference between revisions)
Revision as of 23:47, 23 January 2009
Geroldr (Talk | contribs)
GNUstep-base
← 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 =
Line 26: Line 24:
''' 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
-* [http://www.openssl.org/ libsssl-dev (openssl)] -- for HTTPS connections in [[NSURL]]+* [http://www.gnu.org/software/gnutls/ libgnutls-dev (gnutls)] -- for Transport Layer Security (TLS 1.0 and SSL 3.0) On Ubuntu and debian this will automatically pull in libgcrypt11-dev, liggpg-error-dev, and libtasn1-3-dev
 + 
 +* [http://www.openssl.org/ libssl-dev (openssl)] -- for HTTPS connections in [[NSURL]]
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 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.
Line 35: Line 36:
''' Optional ''' ''' Optional '''
-* [http://www.gnu.org/software/libiconv/ 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 linux systems+* [http://www.gnu.org/software/libiconv/ 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
-* [http://www.swox.com/gmp/ libgmp4] -- arbitrary precision arithmetic+* [http://www.swox.com/gmp/ libgmp] -- arbitrary precision arithmetic -run 'make check' if building yourself to assure you are getting appropriate results.
-* libbfd -- universal "Binary File Descriptor" library, part of [http://www.gnu.org/software/binutils/ GNU binutils]+* libgnutls -- provides Transport Layer Security -- TLS 1.0 and SSL 3.0 protocols (libgnutls-dev)
-* [http://developer.apple.com/opensource/internet/bonjour.html mDNSResponder] -- for [http://www.apple.com/macosx/features/bonjour/ Bonjour] service discovery, as implemented by [[NSNetService]] and [[NSNetServiceBrowser]]+* 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.
 + 
 +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 = = GNUstep-gui =
Line 44: Line 49:
''' Required ''' ''' Required '''
* GNUstep-base * GNUstep-base
-* [http://www.remotesensing.org/libtiff/ tiff] -- TIFF support+* [http://www.remotesensing.org/libtiff/ 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 ''' ''' Recommended '''
-* [http://www.ijg.org/ jpeg] -- JPEG support+* [http://www.ijg.org/ jpeg] -- Joint Photographic Experts Group (JPEG) lossy image data compression support
-* [http://www.libpng.org/pub/png/libpng.html png] -- PNG support + 
 +In Ubuntu and Debian install the libjpeg62-dev development kit.
 + 
 +* [http://www.libpng.org/pub/png/libpng.html png] -- Portable Network Graphics (PNG) support
 + 
 +In Ubuntu and Debian install the libpng12-dev development kit.
''' Optional ''' ''' Optional '''
* [http://sourceforge.net/projects/libungif/ libungif] -- for reading and writing GIF images * [http://sourceforge.net/projects/libungif/ 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.
 +
* [http://aspell.sourceforge.net/ aspell] -- spell checking * [http://aspell.sourceforge.net/ aspell] -- spell checking
-* [http://www.cups.org/ cups-base] -- printing + 
 +In Ubuntu and Debian install the libaspell-dev development kit.
 + 
 +* [http://www.cups.org/ cups-base] -- printing
 + 
 +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://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