Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

 

Table of Contents

Installing Dependencies

...

Most of the dependencies are available in the distribution system.

Ubuntu

sudo add-apt-repository ppa:kervala/ppa && sudo apt-get update 

sudo apt-get install mercurial libcurl4-openssl-dev libluabind-dev libfreetype6-dev \ libx11-dev libgl1-mesa-dev libxxf86vm-dev libxrandr-dev libxrender-dev libopenal-dev \ libogg-dev libvorbis-dev libxml2-dev cmake build-essential libpng12-dev libjpeg62-dev \ rrdtool libmysqlclient15-dev bison libxmu-dev autoconf automake libwww-ssl-dev \
libsquish-dev libcpptest-dev

Debian

Debian is the same as with Ubuntu, if you add the Karmic archive:

...

On Ubuntu Lucid and Debian Squeeze, luabind is in the distribution, skip this section.
If luabind is missing or too old in your distribution, you might want to compile yourself with.Download the package from 

hg clone http://hg.kervala.net/

...

cd luabind
mkdir build
cd build
cmake ..
make
sudo make install

libwww-dev

...

luabind
hg clone http://hg.kervala.net/

...

cd libwww
./autogen.sh
./configure --with-ssl=no --with-zlib --with-expat --with-gnu-ld --enable-shared
make
cmake

export CMAKE_MODULE_PATH=$(pwd)/cmake/modules

cd luabind
mkdir build
cd build
cmake -DWITH_STATIC=ON ..
make
sudo make install

 

  • Note: you may have to run : sudo chmod 755 configure : if you get an error that ./configure is not a program or permission denied.

Above source does not build on Linux Mint Debian (and maybe other Debian based distros) Binaries from Etch can be installed from the archive:

32bit

...

libsquish

You can compile yourself with.

hg clone http://archivehg.debiankervala.org/debian/pool/main/w/w3c-libwww/libwww0_5.4.0-11_i386.deb
wgetnet/squish
hg clone http://archivehg.debiankervala.org/debian/pool/main/w/w3c-libwww/libwww-dev_5.4.0-11_i386.deb
dpkg -i libwww0_5.4.0-11_i386.deb libwww-dev_5.4.0-11_i386.deb

...

aptitude install libexpat1-dev
wget http://archive.debian.org/debian/pool/main/w/w3c-libwww/libwww0_5.4.0-11_amd64.deb
wget http://archive.debian.org/debian/pool/main/w/w3c-libwww/libwww-dev_5.4.0-11_amd64.deb
dpkg -i libwww0_5.4.0-11_amd64.deb libwww-dev_5.4.0-11_amd64.deb

libsquish

You can compile yourself with.

Download the package from http://hg.kervala.net/packaging/file/, uncompress it and:

net/cmake

export CMAKE_MODULE_PATH=$(pwd)/cmake/modules

cd squish
mkdir build
cd build
cmake ..
make
sudo make install

 

NOTE:
Should you get

undefined reference to `__stack_chk_fail'

error, you should just add -lc to the end of packaging/squish/build/CMakeFiles/squish.dir/link.txt

cpptest

You can compile yourself with.

...

mkdir $RYHOME/build && cd $RYHOME/build
cmake -DWITH_NEL_TESTS=OFF ..
make -j3
*Note: Its make -j<# of cores +1>
Tip
titleParallel Job Execution

You can increase the number of parallel compilation jobs that are executed by increasing the -j# count. As a rule of thumb this number should be 1+Number Of Cores and 3 is usually a safe bet.

Warning
titleRunning Out Of Memory

If your system runs out of memory while compiling the build will error out with no details. Reduce "-j#" job count to avoid this. You can safely assume that the compiler will require about 300Mb to 400Mb of RAM per per job.

 

If you want to use lua 5.0 instead of lua 5.1, add -DWITH_LUA51=OFF to the cmake command line.
You can avoid building client/server/tools by specifying:

  • -DWITH_NEL_SAMPLES=OFF
  • -DWITH_NEL_TOOLS=OFF
  • -DWITH_RYZOM_CLIENT=OFF
  • -DWITH_RYZOM_SERVER=OFF
  • -DWITH_RYZOM_TOOLS=OFF

If you want to build NeL without sound libs, for example when you only need the server:

  • -DWITH_NEL=ON -DWITH_SOUND=OFF

Currently there is no CPack support for the client. This means you will not be able to run "cpack -G DEB" and get a debian or rpm package to install and that you have to do make install instead.NOTE:

Warning

If you are building the server on 64-bit Linux you

...

must build with the following CMake options:

  • FINAL_VERSION : ON
  • WITH_STATIC : ON
  • WITH_QT : OFF

If you encounter build errors, try turning the drivers off:

  • WITH_DRIVER_OPENGL

...

  • : OFF
  • WITH_DRIVER_OPENAL

...

  • : OFF

...

Sample server-only cmake on 64-bit Linux

mkdir $RYHOME/build && cd $RYHOME/build
ryzom/code/build$ cmake -DWITH_NEL_TESTS=OFF -DWITH_RYZOM_CLIENT=OFF -DWITH_NEL=ON \
-DWITH_SOUND=OFF -DWITH_STATIC=ON -DWITH_DRIVER_OPENGL=OFF -DWITH_DRIVER_OPENAL=OFF ..
make -j2
# j2 will take advantage of 2 cpus not as well as j3, but each thread uses ~300MB memory

Installing

According to your system you have several options.

NOTE: You can just run Ryzom Core from the source directory after it's finished building.

See Configure Linux ServerWeb Services for more details on post compilation configuration.

...

  • Extract it and start the binary from the root of the windows client directory, which is easier if you create a link:
    -If you did make install, you can move the 'bin' directory, copy/move the 'data' directory and .cfg files into it, and run from there.

...

See CMake Options for additional configuration options.