Difference between revisions of "Building Ryzom Client On Debian2"

From Ryzom Forge Wiki

Jump to: navigation, search
(General)
Line 9: Line 9:
 
This page applies for Debian-based GNU/Linux distributions. To compile Ryzom client under Mac OS X, please check this page : [[Building Ryzom Client under Mac OS X]]
 
This page applies for Debian-based GNU/Linux distributions. To compile Ryzom client under Mac OS X, please check this page : [[Building Ryzom Client under Mac OS X]]
  
This guide is a stripped to the essential version of [[Building_Ryzom_Client_On_Debian]]. Contrary to this guide, we assume here you plan to build the client only for your own needs, and without intent to make a package/make it compatible with other linux distributions.  
+
This guide is a stripped to the essential version of [[Building_Ryzom_Client_On_Debian]].
  
Instructions with # are to be executed as root. Ones with $ should be run from your normal user account.
+
'''This means''': we assume here you plan to build the client only for your own needs, and without intent to:
 +
* make a .deb package
 +
* make it compatible with other linux distributions (using an older libc6)
 +
* build it static instead of dynamic.
 +
 
 +
If you do, please view the other guide.
 +
 
 +
Instructions preceeded with # are to be executed as root. Ones with $ should be run from your normal user account.
  
 
=== Why should i build my own client ? ===
 
=== Why should i build my own client ? ===

Revision as of 20:05, 2 October 2014

Flag-DE

DE translation needed please

Flag-ES

ES translation needed please

Flag-FR

FR translation needed please


General

This page applies for Debian-based GNU/Linux distributions. To compile Ryzom client under Mac OS X, please check this page : Building Ryzom Client under Mac OS X

This guide is a stripped to the essential version of Building_Ryzom_Client_On_Debian.

This means: we assume here you plan to build the client only for your own needs, and without intent to:

  • make a .deb package
  • make it compatible with other linux distributions (using an older libc6)
  • build it static instead of dynamic.

If you do, please view the other guide.

Instructions preceeded with # are to be executed as root. Ones with $ should be run from your normal user account.

Why should i build my own client ?

There is a couple of valid reasons :

  • You are having problems with sound (usually this happens when you don't use pulseaudio on your system)
  • You want better performance
  • You want to say "i did it !"
  • You love to build your own executables (gentoo users, i'm looking at you)
  • You want better graphics : the official client being pretty old, and some big update (including anti-aliasing if possible and anisotropic filter things like that) are available if you take the latest code from RyzomCore.

Installing ryzom dependencies

# aptitude install mercurial libluabind-dev libfreetype6-dev libcurl4-openssl-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 libtool

Compiling ryzom dependencies

First, download all the code you need :

$ cd ~
$ mkdir dep_ryzomcore && cd dep_ryzomcore
$ hg clone http://hg.kervala.net/packaging
$ hg clone http://hg.kervala.net/cmake
$ export CMAKE_MODULE_PATH=$(pwd)/cmake/modules

Let's build libwww-dev :

$ cd ~/dep_ryzomcore/packaging/libwww
$ ./autogen.sh
$ ./configure --with-ssl=no --with-zlib --with-expat --with-gnu-ld --enable-shared
$ make
# make install

Note: libwww-dev package isn't available for all architectures in Debian repositories. This library is old and unmaintained, and patched so that Ryzom can continue using it. You might help us replacing it.

Getting ryzom code

$ cd ~
$ hg clone https://bitbucket.org/ryzom/ryzomcore

We just need to switch branch (default to compatibility)

$ cd ryzomcore
$ hg update -c compatibility

If you need to update the code later, just type :

$ hg pull && hg update

Building Ryzom (dynamically linked)

$ cd ~
$ mkdir build && cd build

For differents cmake options, see the other guide's Building_Ryzom_Client_On_Debian#CMake options. Here's the one i'm using :

$ cmake -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=OFF -DWITH_NEL_TOOLS=OFF -DWITH_RYZOM_SERVER=OFF \
-DWITH_RYZOM_TOOLS=OFF -DWITH_QT=OFF -DWITH_RYZOM_CLIENT=ON ../ryzomcore/code

Then run cmake again Here, n is the number of core in your CPU :

$ make -jn

The binary is now in bin/ryzom_client. We can now install ryzom system wide:

# make install
# ldconfig

Starting Ryzom with the newly built client

It is required to run ryzom_client from a directory which has the game data in.

If you haven't already done, get the full game .zip from the official ryzom page. Unzip it where you want the game to be installed.

Not strictly necessary, but replace the client with the one you built. If we unzipped the archive in ~/games, that is:

$ mv ~/games/ryzom/ryzom_client ~/games/ryzom/ryzom_client_old
$ cp /usr/local/games/ryzom_client ~/games/ryzom/ryzom_client

You can start the game:

$ cd ~/games/ryzom
$ ./ryzom_client

Now Play !

Sources

This same guide but with more complete informations about chrooting your environment, and compiling the necessary stuff for Ryzom tools (i.e: not only client): Building_Ryzom_Client_On_Debian


Ryzom Wiki: Ryzom Commons | DE • EN • ESFRRU | Ryzom Forge