Update the build instructions

This commit is contained in:
Olivier Teulière 2012-11-29 18:05:10 +01:00
parent ca41e4c0d0
commit 460e9ecfb9

35
INSTALL
View file

@ -32,22 +32,22 @@ Note that the OS-specific instructions may contain hints on how to install them
--> Used for saving/loading games --> Used for saving/loading games
You can use any XML back-end supported by Arabica (like expat, or libxml2) You can use any XML back-end supported by Arabica (like expat, or libxml2)
- libconfig (optional): http://www.hyperrealm.com/libconfig/ - libconfig++ (optional): http://www.hyperrealm.com/libconfig/
--> Used for saving/loading preferences --> Used for saving/loading preferences
- Qt (optional, but recommended): http://qt.nokia.com/ - Qt (optional, but strongly recommended): http://qt.nokia.com/
--> Used for the graphical interface (see below) --> Used for the graphical interface (see below)
- libncursesw (optional): http://www.gnu.org/software/ncurses/ - libncursesw (optional): http://www.gnu.org/software/ncurses/
--> Used for the ncurses interface (see below) --> Used for the ncurses interface (see below)
There are in fact several interfaces to Eliot: There are in fact several interfaces to Eliot:
- one in text mode: mostly useful to debug Eliot
- one using the ncursesw library: nice and almost complete, but not really
graphical
- a Qt interface: the best interface to use, it supports all the features. - a Qt interface: the best interface to use, it supports all the features.
This one is enabled by default if Qt development files are detected, but This one is enabled by default if Qt development files are detected, but
you can force it with --enable-qt you can force it with --enable-qt
- one in text mode: mostly useful to debug Eliot
- one using the ncursesw library: nice and almost complete, but not really
graphical
These interfaces can be enabled or disabled at configuration time. Example: These interfaces can be enabled or disabled at configuration time. Example:
./configure --disable-text --enable-ncurses --enable-qt ./configure --disable-text --enable-ncurses --enable-qt
@ -57,17 +57,24 @@ These interfaces can be enabled or disabled at configuration time. Example:
2) Linux/Unix build 2) Linux/Unix build
=================== ===================
* Install the dependencies
On Debian-based systems (like Ubuntu), the following command should install On Debian-based systems (like Ubuntu), the following command should install
the needed dependencies (you may need to adjust the version numbers): the needed dependencies (you may need to adjust the version numbers):
sudo apt-get install libboost-dev libqt4-dev libconfig++-dev libncursesw5-dev libexpat-dev
On RPM-based systems, the command should be the following (as root):
yum install boost-devel qt-devel expat-devel libconfig-devel
sudo apt-get install libboost-dev libqt4-core libqt4-gui libconfig++8-dev libncursesw5-dev * Download and build libarabica (unless it is packaged for your distribution):
a) Download the latest release (see link above) and extract the archive
b) Build with the following line:
./configure --enable-static --disable-shared --with-parser=expat && make
c) Install it, as root:
make install
In addition, you need to download and build libarabica (this is straight-forward). * Build Eliot, with the following command:
To build Eliot, you only have to run the following command:
./configure && make ./configure && make
Then, as root: * Install it, as root:
make install make install
@ -102,12 +109,11 @@ Here are the steps for the cross-compilation:
- configure with the following command: - configure with the following command:
export INST=`pwd`/extras/contrib/inst && \ export INST=`pwd`/extras/contrib/inst && \
PKG_CONFIG_PATH="${INST}/lib/pkgconfig:${PKG_CONFIG_PATH}" \ PKG_CONFIG_PATH="${INST}/lib/pkgconfig:${PKG_CONFIG_PATH}" \
CPPFLAGS=-I${INST}/include LDFLAGS=-L${INST}/lib \ CPPFLAGS=-I${INST}/include LDFLAGS=-L${INST}/lib CXX=i586-mingw32msvc-g++ \
CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \
./configure --host=i586-mingw32msvc --build=i386-linux \ ./configure --host=i586-mingw32msvc --build=i386-linux \
--with-boost=${INST} --with-expat=${INST} --with-boost=${INST} --with-expat=${INST}
- to compile, run 'make', possibly followed with 'make install' - to compile, run 'make'
- run 'make package-win32-zip' to get everything packed up in a nice .zip - run 'make package-win32-zip' to get everything packed up in a nice .zip
@ -128,9 +134,6 @@ Here are the steps for the cross-compilation:
LIBS="-lxml2" \ LIBS="-lxml2" \
./configure --enable-qt --disable-text ./configure --enable-qt --disable-text
* You may need to remove the moc files manually:
rm qt/*.moc.cpp
* To compile, run 'make' * To compile, run 'make'
* Then, to get a ready to use .dmg file, run 'make package-macosx-dmg' * Then, to get a ready to use .dmg file, run 'make package-macosx-dmg'