« Previous - Version 50/89 (diff) - Next » - Current version
sm3, 11/05/2010 12:26 am


Building NeL and Ryzom Client with CMake on GNU/Linux

Installing Dependencies

Packages

Most of the dependencies are available in the distribution system.

Ubuntu

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

Gentoo

Note: for Gentoo you will probably need to activate the openssl flag for curl before emerging :

echo "net-misc/curl openssl" >> /etc/portage/package.use

emerge -av net-misc/curl dev-cpp/luabind media-libs/freetype x11-libs/libX11 \
media-libs/mesa x11-libs/libXxf86vm media-libs/openal media-libs/freealut \
media-libs/libogg media-libs/libvorbis dev-libs/libxml2 dev-util/cmake \
media-libs/libpng media-libs/jpeg net-analyzer/rrdtool sys-devel/bison net-libs/libwww

Archlinux

pacman -S curl freetype2 libx11 mesa libxxf86vm openal freealut libogg libvorbis \
libxml2 cmake libpng libjpeg rrdtool bison libwww

Luabind

On Ubuntu Lucid, luabind is in the distribution, skip this section.
If luabind is missing or too old in your distribution, you might want to checkout InstallingLuabind.

libwww-dev

In Ubuntu lucid this package doesn't seem to exist. You can however use the package from Karmic or download the source.

NOTE: If you are using Ubuntu and want to install libwww-dev you can add the karmic archive to your /etc/apt/sources.list as follows:

deb http://us.archive.ubuntu.com/ubuntu/ karmic universe
deb-src http://us.archive.ubuntu.com/ubuntu/ karmic universe
deb http://us.archive.ubuntu.com/ubuntu/ karmic-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ karmic-updates universe

then sudo apt-get update and sudo apt-get install libwww-dev

Get the sources

Warning: Make sure you do not have the packages libnel or libnel-dev already installed from the main repositories as of writing this they are at version 0.5 which is too old to build the game with.

After getting the dependencies make sure you have downloaded the code and then define the directory where you have downloaded it:

export RYHOME="/path/to/ryzom/code" 

Building and installing the NeL and Ryzom

Building

Before continuing make sure you have installed the packages you just generated earlier (or that you installed them with make install)

mkdir $RYHOME/build && cd $RYHOME/build
cmake -DWITH_NEL_TESTS=OFF ..
make -j3
*Note: Its make -j<# of cores +1>
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: If you are building the server on 64-bit Linux you should use -DWITH_STATIC=ON for now. Also add -DWITH_DRIVER_OPENGL=OFF and -DWITH_DRIVER_OPENAL=OFF to avoid build errors.

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 ConfigureForLinux

Debian/Ubuntu (and others using deb packages)

Create a deb package using

cpack -G DEB -D CPACK_PACKAGE_CONTACT="your@mail.address"

(replace the email by your own) and install it on your system.

Fedora (and rpm based distributions)

Create a RPM package using

cpack -G RPM -D CPACK_PACKAGE_CONTACT="your@mail.address"

(replace the email by your own) and install it on your system.

Others (incl. Gentoo)

Install the NeL library with

make install

Run the Ryzom Client

This section explains how to run the client and connect the open shard.

  • Extract it and start the binary from the root of the windows client directory, you might want to create a link:
ln -s /path/to/code/ryzom/build/bin/ryzom_client /path/to/windows/client/dir/ryzom_core_linux

The client will connect to the Open shard by default. Use the instructions of the OpenShard page to create an account on that shard.