Development:Dependency Matrix: Difference between revisions

From Adonthell
Jump to navigation Jump to search
Eno (talk | contribs)
 
(21 intermediate revisions by 6 users not shown)
Line 13: Line 13:
| '''Required'''
| '''Required'''
| '''Comment'''
| '''Comment'''
| '''Debian Package Name'''
|-
|-
| GNU autoconf  
| GNU autoconf  
| [http://www.gnu.org/software/autoconf/]
| [http://www.gnu.org/software/autoconf/]
| 2.5.0
| 2.5.0
| 2.6.2
| 2.68
| No
| No
| Optional when using CMake; required to build other dependencies
| Optional when using CMake; required to build other dependencies
| autoconf
|-
|-
| GNU automake  
| GNU automake  
| [http://www.gnu.org/software/automake/]
| [http://www.gnu.org/software/automake/]
| 1.6
| 1.6
| 1.10.1
| 1.11.3
| No
| No
| Optional when using CMake; required to build other dependencies
| Optional when using CMake; required to build other dependencies
| automake
|-
|-
| GNU libtool  
| GNU libtool  
| [http://www.gnu.org/software/libtool/]
| [http://www.gnu.org/software/libtool/]
| 1.5.22
| 1.5.22
| 1.5.26
| 2.4.2
| Yes
| Yes
| Need libltdl that comes with libtool
| Need libltdl that comes with libtool
|-
| libtool
| GNU libiconv
| [http://www.gnu.org/software/libiconv/]
| 1.11
| 1.11
| No
| Required to enable national language support (NLS)
|-
| GNU gettext
| [http://www.gnu.org/software/gettext/]
| 0.14.4
| 0.17
| No
| Required to enable national language support (NLS)
|-
|-
| Python  
| Python  
| [http://www.python.org]
| [http://www.python.org]
| 2.0
| 2.0
| 2.5
| 2.7
| Yes
| Yes
| Used for scripting
| Used for scripting
| python2.7-dev
|-
|-
| SDL  
| SDL  
| [http://www.libsdl.org]
| [http://www.libsdl.org]
| 1.2.0
| 1.2.0
| 1.2.13
| 1.2.15
| Yes
| Yes
| Used for graphics and input
| Used for graphics and input
| libsdl1.2-dev
|-
|-
| zlib  
| zlib  
| [http://www.zlib.net]
| [http://www.zlib.net]
| 1.1.4
| 1.1.4
| 1.2.3
| 1.2.6
| Yes
| Yes
| Used for compression of data files
| Used for compression of data files
| zlib1g-dev
|-
|-
| Freetype2  
| Freetype2  
| [http://www.freetype.org]
| [http://www.freetype.org]
| 2.1.9
| 2.1.9
| 2.2.1
| 2.4.8
| Yes
| Yes
| Used for rendering fonts
| Used for rendering fonts
| libfreetype6-dev
|-
|-
| Libxml2  
| Libxml2  
| [http://www.xmlsoft.org]
| [http://www.xmlsoft.org]
| 2.5.0
| 2.5.0
| 2.6.26
| 2.7.8
| Yes
| Yes
| Used for configuration files
| Used for configuration files
| libxml2-dev
|-
|-
| libogg  
| libogg  
| [http://www.xiph.org/downloads/]
| [http://www.xiph.org/downloads/]
| 1.0.0
| 1.0.0
| 1.1.3
| 1.2.2
| Yes
| Yes
| Used for playback of music and sfx
| Used for playback of music and sfx
| libogg-dev
|-
|-
| libvorbis  
| libvorbis  
| [http://www.xiph.org/downloads/]
| [http://www.xiph.org/downloads/]
| 1.0.0
| 1.0.0
| 1.1.2
| 1.3.2
| Yes
| Yes
| Used for playback of music and sfx
| Used for playback of music and sfx
| libvorbis-dev
|-
|-
| SDL Mixer  
| SDL Mixer  
| [http://www.libsdl.org/projects/SDL_mixer/]
| [http://www.libsdl.org/projects/SDL_mixer/]
| 1.2.0
| 1.2.0
| 1.2.7
| 1.2.12
| Yes
| Yes
| Used for audio
| Used for audio
| libsdl-mixer1.2-dev
|-
|-
| libpng  
| libpng  
| [http://www.libpng.org/pub/png/libpng.html]
| [http://www.libpng.org/pub/png/libpng.html]
| 1.2
| 1.2
| 1.2.8
| 1.5.10
| Yes
| Yes
| Used for loading graphics
| Used for loading graphics
| libpng12-dev
|-
|-
| SWIG  
| SWIG  
| [http://www.swig.org]
| [http://www.swig.org]
| 1.3.24
| 1.3.24
| 1.3.33
| 2.0.4
| Yes
| Yes
| Used as glue between C++ and Python
| Used as glue between C++ and Python
| swig
|- style="background:LightGray; text-align:center"
| colspan="7" | Optional Dependencies
|-
| CMake
| [http://www.cmake.org]
| 2.6.0
| 2.8.0
| No
| For building Adonthell unless using GNU autotools
| cmake
|-
| GNU libiconv
| [http://www.gnu.org/software/libiconv/]
| 1.11
| 2.13
| No
| Required to enable national language support (NLS)
| libc6-dev
|-
| GNU gettext
| [http://www.gnu.org/software/gettext/]
| 0.14.4
| 0.18.1.1
| No
| Required to enable national language support (NLS)
| gettext
|-
| Doxygen
| [http://www.doxygen.org]
| 2.x
| 2.6.3
| No
| Used to generate development documentation
| doxygen
|-
| GraphViz (dot)
| [http://www.graphviz.org/]
| 2.26.x
| 2.26.3
| No
| Used to generate development documentation
| graphviz
|-
| google-glog
| [http://code.google.com/p/google-glog/]
| 0.3.0
| 0.3.0
| Optional
| Used for logging
| libgoogle-glog0
|-
| googletest
| [http://code.google.com/p/googletest/]
| 0.4.0
| 0.4.0
| Only for [[Development:Developer Build|developer builds]]
| Unit testing
| libgtest-dev
|-
| googlemock
| [http://code.google.com/p/googlemock/]
| 0.4.0
| 0.4.0
| Only for [[Development:Developer Build|developer builds]]
| Unit testing
| google-mock
|- style="background:LightGray; text-align:center"
| colspan="7" | Adonthell Tools Dependencies
|-
|-
| pkg-config  
| pkg-config  
| [http://pkgconfig.freedesktop.org/wiki/]
| [http://pkgconfig.freedesktop.org/wiki/]
| 0.15
| 0.15
| 0.20
| 0.26
| Yes
| Only for [[Tools:Contents|Tools]]
| Used to make Adonthell modules available to tools
| Used to make Adonthell modules available to tools
| pkg-config
|-
|-
| CMake
| flex
| [http://www.cmake.org]
| [http://flex.sourceforge.net/]
| 2.4.0
| 2.5.x
| 2.6.0
| 2.5.35
| No
| Only for [[Tools:Contents|Tools]]
| For building Adonthell unless using GNU autotools
| Required by [[Tools:Dlgedit:Contents|Dlgedit]]
| flex
|-
| libcairo2
| [http://cairographics.org/]
| 1.2.6
| 1.10.2
| Only for [[Tools:Contents|Tools]]
| Used as graphics backend with GTK+
| libcairo2-dev
|-
| libgtk2
| [http://www.gtk.org/]
| 2.16.0
| 2.24.9
| Only for [[Tools:Contents|Tools]]
| Used as graphics backend with GTK+
| libgtk2.0-dev
|}
|}


Line 138: Line 224:
* Dependencies are listed in the order they should be installed, in case you start with a bare system.
* Dependencies are listed in the order they should be installed, in case you start with a bare system.
* The version numbers given are the minimum version required and the most recent version known to still work with Adonthell. Please update as appropriate.
* The version numbers given are the minimum version required and the most recent version known to still work with Adonthell. Please update as appropriate.
* Most libraries should be installed together with the development packages: sample debian packages are python-cxx-dev, libsdl-mixer1.2-dev, libgtkmm-2.4-dev and libsdl1.2-dev
* Most libraries should be installed together with the development packages: the debian development packages are packagename-dev, e.g. libsdl-mixer1.2-dev
[[Category:Development]]
[[Category:Development]]

Latest revision as of 22:30, 4 September 2012

Adonthell is a fairly complex project that has a number of dependencies. Most of those are common in the Unix world and you might find that they are already present on your system. When attempting to develop on more obscure systems you might have to install a couple of those yourself however.

Afterwards you are ready to get the source and compile Adonthell.

Dependency Matrix

Dependency Min Recent Required Comment Debian Package Name
GNU autoconf [1] 2.5.0 2.68 No Optional when using CMake; required to build other dependencies autoconf
GNU automake [2] 1.6 1.11.3 No Optional when using CMake; required to build other dependencies automake
GNU libtool [3] 1.5.22 2.4.2 Yes Need libltdl that comes with libtool libtool
Python [4] 2.0 2.7 Yes Used for scripting python2.7-dev
SDL [5] 1.2.0 1.2.15 Yes Used for graphics and input libsdl1.2-dev
zlib [6] 1.1.4 1.2.6 Yes Used for compression of data files zlib1g-dev
Freetype2 [7] 2.1.9 2.4.8 Yes Used for rendering fonts libfreetype6-dev
Libxml2 [8] 2.5.0 2.7.8 Yes Used for configuration files libxml2-dev
libogg [9] 1.0.0 1.2.2 Yes Used for playback of music and sfx libogg-dev
libvorbis [10] 1.0.0 1.3.2 Yes Used for playback of music and sfx libvorbis-dev
SDL Mixer [11] 1.2.0 1.2.12 Yes Used for audio libsdl-mixer1.2-dev
libpng [12] 1.2 1.5.10 Yes Used for loading graphics libpng12-dev
SWIG [13] 1.3.24 2.0.4 Yes Used as glue between C++ and Python swig
Optional Dependencies
CMake [14] 2.6.0 2.8.0 No For building Adonthell unless using GNU autotools cmake
GNU libiconv [15] 1.11 2.13 No Required to enable national language support (NLS) libc6-dev
GNU gettext [16] 0.14.4 0.18.1.1 No Required to enable national language support (NLS) gettext
Doxygen [17] 2.x 2.6.3 No Used to generate development documentation doxygen
GraphViz (dot) [18] 2.26.x 2.26.3 No Used to generate development documentation graphviz
google-glog [19] 0.3.0 0.3.0 Optional Used for logging libgoogle-glog0
googletest [20] 0.4.0 0.4.0 Only for developer builds Unit testing libgtest-dev
googlemock [21] 0.4.0 0.4.0 Only for developer builds Unit testing google-mock
Adonthell Tools Dependencies
pkg-config [22] 0.15 0.26 Only for Tools Used to make Adonthell modules available to tools pkg-config
flex [23] 2.5.x 2.5.35 Only for Tools Required by Dlgedit flex
libcairo2 [24] 1.2.6 1.10.2 Only for Tools Used as graphics backend with GTK+ libcairo2-dev
libgtk2 [25] 2.16.0 2.24.9 Only for Tools Used as graphics backend with GTK+ libgtk2.0-dev

Notes

  • Dependencies are listed in the order they should be installed, in case you start with a bare system.
  • The version numbers given are the minimum version required and the most recent version known to still work with Adonthell. Please update as appropriate.
  • Most libraries should be installed together with the development packages: the debian development packages are packagename-dev, e.g. libsdl-mixer1.2-dev