Table of Contents

Installation Guide for Debian/Ubuntu (32bit)

1. Install Octave, Boost, and ODE

Octave
Install the packages, octave3.0 and octave3.0-headers.
 $ sudo apt-get -f install octave3.0 octave3.0-headers
Note: octave3.2 is not supported now.
Note: You may need to create a symbolic link of libatlas.so, as follows:
 $ cd /usr/lib
 $ sudo ln -s libatlas.so.3gf libatlas.so
Boost C++ Libraries
Install libboost1.40-all-dev.
 $ sudo apt-get -f install libboost1.40-all-dev
Open Dynamics Engine (ODE)
Since the binary package of ODE does not provide libdrawstuff, we compile ODE from the source code. First of all, we need to install OpenGL:
 $ sudo apt-get -f install libglut3 libglut3-dev
If you cannot find out these packages, freeglut3 and freeglut3-dev may be the alternatives.
Then, download the source code (e.g. ode-0.11.1.zip) and extract it:
 $ cd ~/lib
 $ unzip ode-0.11.1.zip
 $ cd ode-0.11.1/
Here, we put ODE on ~/lib/ode-0.11.1, but any location is possible. Execute ./configure (maybe you need to install the other packages):
 $ ./configure --enable-double-precision
Here, --enable-double-precision is required for the SkyAI's benchmark. If the configure succeeded, execute the make command:
 $ make
That's it. You need NOT to execute 'make install'.
Note
When installing ODE, you will see the following errors:
 x11.cpp:108: error: undefined reference to 'XOpenDisplay'
 x11.cpp:123: error: undefined reference to 'XCreateColormap'
 ...
To fix this problem, you need to change the configure option. These errors arise because the library libX11.so is not about to be linked. Thus, set -lX11 in X_EXTRA_LIBS, then configure. Specifically, if you are using bash, execute as follows:
X_EXTRA_LIBS=-lX11 ./configure --enable-double-precision

2. Download the source code

You can choose two ways:

(1) Get the files from the Git repository (recommended)
You need the Git program. If you do not have Git, install:
 $ sudo apt-get -f install git-core
Download SkyAI from sourceforge:
 $ cd ~/proj
 $ git clone git://skyai.git.sourceforge.net/gitroot/skyai/skyai
Here, we put SkyAI on ~/proj/skyai, but any location is OK.
(2) Download the archive (easy)
Download an archive from SkyAI File List, then extract it. Here, we assume the extracted directory is ~/proj/skyai, but any location is OK.

3. Setup the makefiles

Create the following files at the SkyAI directory (e.g. ~/proj/skyai).

Makefile_preconf
 include $(BASE_REL_DIR)/Makefile_preconf.sample
 SKYAI_BASE := $(wildcard ~/proj/skyai)
Here, we assume that SkyAI is put on ~/proj/skyai. If not, modify SKYAI_BASE.
Makefile_libconf
 ## for Octave
 ifeq ($(USING_OCTAVE),true)
   OCTAVE_VER:=3.0.5
   LIBS += -I/usr/include/octave-$(OCTAVE_VER)
   LDLIBS += -L/usr/lib/octave-$(OCTAVE_VER) -loctave -lcruft -Wl,-rpath /usr/lib/octave-$(OCTAVE_VER)
   LDLIBS += -ldl -lfftw3 -L/usr/lib/atlas -latlas -llapack -lblas
 endif
 
 ## for ODE
 ifeq ($(USING_ODE),true)
   LIBODE := $(wildcard ~/lib/ode-0.11.1)
   LIBS += -I$(LIBODE)/include
   LIBS += -DODE_MINOR_VERSION=11 -DdDOUBLE
   LDLIBS += $(LIBODE)/ode/src/.libs/libode.a
   LDLIBS += $(LIBODE)/drawstuff/src/.libs/libdrawstuff.a
   LDLIBS += -lSM -lICE -lGL -L/usr/X11R6/lib -lXext -lX11 -ldl -lGLU -lpthread
 endif
Here, we assume that (1) the octave version is 3.0.5, and (2) ODE is version 0.11.1 and put on ~/lib/ode-0.11.1. If you are using a difference configuration, modify OCTAVE_VER and LIBODE.

4. Build

In the skyai directory, execute:

 $ make

Installation Guide for Debian/Ubuntu (64bit)

In the procedure of Debian/Ubuntu (32bit), change the setup of Makefile_preconf as follows:

 include $(BASE_REL_DIR)/Makefile_preconf.sample
 SKYAI_BASE := $(wildcard ~/proj/skyai)
 
 ifeq ($(DEBUG),true)
   CXXFLAGS := -g -Wall -rdynamic
 else
   CXXFLAGS := -g -Wall -rdynamic -O3
 endif
 LDFLAGS  := $(CXXFLAGS)

Test

To test your installation, please see Running Demos.

If you have a trouble...

Please do not hesitate to contact us. Any comments are welcome!


Front page   New List of pages Search Recent changes   Help   RSS of recent changes