|
|
(6 intermediate revisions by one other user not shown) |
Line 1: |
Line 1: |
− | =Building FreeOrion to separate directory tree=
| |
− | I wanted to check out FreeOrion, but not to pollute my system with scattered, hard to uninstall, files. Such files are easily left behind not only when trying to completely uninstall software, but also when software is upgraded and some file from older version is no longer needed and should be removed. Installing uninstallable debian packets is ok, any other method of installing files to system directories I don't like. So I decided to build FreeOrion and those dependencies that cannot be installed as debian packets to separate directory tree. This means 1) I don't need root permissions in any part of installation process, 2) I can completely remove freeorion by a simple "rm -Rf freeorion".
| |
| | | |
− | ==Tested systems==
| |
− | So far I have built FreeOrion in this manner in Debian Lenny (64bit) and Ubuntu Jaunty (64bit). I documented this thing only when building for Jaunty, so below instructions apply to that case. Lenny differed at least in that I had to compile also libboost.
| |
− |
| |
− | ==Build==
| |
− | Create freeorion directory. I'm doing this under my home directory (/home/cazfi)
| |
− | mkdir freeorion
| |
− | cd freeorion
| |
− |
| |
− | Download and build ogre
| |
− | wget http://downloads.sourceforge.net/ogre/ogre-v1-6-2.tar.bz2
| |
− | tar xjf ogre-v1-6-2.tar.bz2
| |
− | cd ogre
| |
− | ./configure --prefix=$HOME/freeorion/sys
| |
− | make install
| |
− | cd ..
| |
− |
| |
− | Download and build bullet. For some reason bullet tarball contains install-sh but no other build system files. We have to create other files by ./autogen.sh but then we may have inconsistent system; install-sh might be incompatible from other files. ./autogen.sh does not overwrite install-sh, but it creates new one if it's missing. So I simply remove tarball provided install-sh before running ./autogen.sh.
| |
− | wget http://bullet.googlecode.com/files/bullet-2.74.tgz
| |
− | tar xzf bullet-2.74.tgz
| |
− | cd bullet-2.74
| |
− | rm install-sh
| |
− | ./autogen.sh
| |
− | ./configure --prefix=$HOME/freeorion/sys
| |
− | make install
| |
− | cd ..
| |
− |
| |
− | FreeOrion checkout
| |
− | svn co https://freeorion.svn.sourceforge.net/svnroot/freeorion/trunk TRUNK
| |
− |
| |
− | Build GG
| |
− | cd TRUNK/FreeOrion/GG
| |
− | PKG_CONFIG_PATH=$HOME/freeorion/sys/lib/pkgconfig scons configure prefix=$HOME/freeorion/sys pkgconfigdir=$HOME/freeorion/sys/lib/pkgconfig
| |
− | scons install
| |
− | cd ..
| |
− |
| |
− | Build FreeOrion. FreeOrion does not install ogre_plugins.cfg, nor does it generate it correctly. So we do that with sed.
| |
− | PKG_CONFIG_PATH=$HOME/freeorion/sys/lib/pkgconfig scons configure prefix=$HOME/freeorion/install bindir=$HOME/freeorion/install/bin datadir=$HOME/freeorion/install/share/freeorion
| |
− | scons install
| |
− | sed "s,PluginFolder=.,PluginFolder=$HOME/freeorion/sys/lib/OGRE," ogre_plugins.cfg > $HOME/freeorion/install/share/freeorion/ogre_plugins.cfg
| |
− |
| |
− | ==Running FreeOrion==
| |
− | FreeOrion binary is in /home/cazfi/freeorion/install/bin. Since we have installed self built dependency libraries to non-standard location, we have to set LD_LIBRARY_PATH before running freeorion.
| |
− | cd ../..
| |
− | LD_LIBRARY_PATH=$HOME/freeorion/sys/lib install/bin/freeorion
| |