SmartBody : Building SmartBody for Linux

The Linux build requires a number of packages to be installed. For Ubuntu installations, the command apt-get can be used to retrieve and install those packages, for example:

sudo apt-get install cmake

Other Linux flavors can use rpm or similar installer.

You need to have the following packages installed:

Linux Packages Needed for SmartBody build
cmake
g++
libxerces-c3-dev
libgl1-mesa-dev
libglu1-mesa-dev
xutils-dev
libxi-dev
freeglut3-dev
libglew-dev
libxft-dev
libapr1-dev
libaprutil1-dev
libcppunit-dev
liblapack-dev
libblas-dev
libf2c2-dev
build-essential
mono-devel
mono-xbuild
python-dev
libopenal-dev
libsndfile-dev
libalut-dev
ncurses-dev
fltk1.3-dev

You can run the following command to install the above packages:

 

sudo apt-get install cmake g++ libxerces-c3-dev libgl1-mesa-dev libglu1-mesa-dev xutils-dev libxi-dev freeglut3-dev libglew-dev libxft-dev libapr1-dev libaprutil1-dev libcppunit-dev liblapack-dev libblas-dev libf2c2-dev build-essential mono-devel mono-xbuild python-dev libopenal-dev libsndfile-dev libalut-dev ncurses-dev fltk1.3-dev

 

Linux packages needed for text-to-speech engine
festival-dev
ncurses-dev

You can run the following command to install packages needed for TTS:

 

sudo apt-get install festival-dev

 

Linux packages needed for Ogre3D viewer
libzzip-dev
libxaw7-dev

libxxf86vm-dev

libxrandr-dev

libfreeimage-dev
nvidia-cg-toolkit
libois-dev

libogre-dev

ogre-1.8-samples-data

You can run the following command to install packages necessary for Ogre:

sudo apt-get install libzzip-dev libxaw7-dev libxxf86vm-dev libxrandr-dev libfreeimage-dev nvidia-cg-toolkit libois-dev libogre-dev ogre-1.8-samples-data
 
Linux packages needed for test suite
imagemagick

You can run the following command to install the packages necessary to run the test suite:

sudo apt-get install imagemagick

 

The Ogre-based renderer is not built by default. To build it, you will need to download the 1.6.5 source (www.ogre3d.org/download/source), build and install it into /usr/local. Next, uncomment the core/ogre-viewer directory from the core/CMakeLists.txt file. This will add the OgreViewer application to the build - the binary will be located in core/ogre-viewer/bin.

To build the Linux version:

./linuxlibsdownload.sh

This will download the needed dependencies in source code form, create a folder called 'dependencies'.

Next, build the dependencies by running the script:

sudo ./linuxlibsbuild.sh

Running as superuser (sudo) is needed because of certain installation commands. The script will build the necessary dependent libraries in the include/ and lib/ folders under the main smartbody folder.

Next, make and install the SmartBody code as follows:

mkdir buildfolder
cd buildfolder
cmake ..
make -j6 install

(NOTE: There is an error when using cmake 2.8.4. Please download and install cmake 2.8.10 from: http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz)

This will create the Makefiles, then run the build script and install the executable sbgui in core/smartbody/sbin/bin

You can then run sbgui by running:

cd core/smartbody/sbgui/bin
./sbgui