pour réussir à compiler le jeu sous Ubuntu 16.04, voici une petite procédure.
Celle-ci remplace en partie https://doc.ubuntu-fr.org/landes_eternelles
1/ Télécharger le client du jeu (voir page d'accueil) puis décompresser le jeu (On appellera le rép ~/LandesEternelles)
2/ Télécharger le code source du client du jeu (voir page d'accueil) puis décompresser celui-ci dans un répertoire distinct (On appellera le rép ~/LandesEternelles-source)
3/ Installer les paquets requis
Code : Tout sélectionner
sudo apt-get install libxml2-dev libsdl1.2-dev libopenal-dev libogg-dev libsdl-net1.2-dev libvorbis-dev libsdl-image1.2-dev libcal3d12-dev libxslt1-dev g++ build-essential patchutils patch
a/ Patch minimap.c
Code : Tout sélectionner
cd ~/LandesEternelles-source
cat > minimap.c.diff
--- minimap.c.old 2014-10-24 22:13:58.000000000 +0200
+++ minimap.c 2016-08-27 17:56:15.021816440 +0200
@@ -84,7 +84,7 @@
glTranslatef(-x,-y,0.0f);
}
-__inline__ void rotate_at_player(float zoom_multip, float px, float py)
+static __inline__ void rotate_at_player(float zoom_multip, float px, float py)
{
float x,y;
x = (px - (float_minimap_size/2) );
@@ -100,7 +100,7 @@
glTranslatef(-x,-y,0.0f);
}
-__inline__ void rotate_click_coords(float * x,float * y)
+static __inline__ void rotate_click_coords(float * x,float * y)
{
if(rotate_minimap)
{
@@ -113,7 +113,7 @@
}
}
-__inline__ int is_within_radius(float mx, float my,float px,float py,float radius)
+static __inline__ int is_within_radius(float mx, float my,float px,float py,float radius)
{
float distance;
b/ Patch weather.c
Code : Tout sélectionner
cd ~/LandesEternelles-source
cat > weather.c.diff
--- weather.c.old 2014-10-24 22:13:58.000000000 +0200
+++ weather.c 2016-08-27 17:57:37.154191062 +0200
@@ -122,7 +122,7 @@
// array used to build coordinates of quads to display particles
float weather_particles_coords[MAX_RAIN_DROPS*20];
-__inline__ float next_random_number()
+static __inline__ float next_random_number()
{
last_random_number = (last_random_number+1)%RANDOM_TABLE_SIZE;
return random_table[last_random_number];
@@ -297,7 +297,7 @@
}
}
-void __inline__ make_drop(int type, int i, float x, float y, float z)
+static void __inline__ make_drop(int type, int i, float x, float y, float z)
{
weather_drops[type][i].pos1[0] = x + 16.0f * RAND_ONE - 8.0f;
weather_drops[type][i].pos1[1] = y + 16.0f * RAND_ONE - 8.0f;
5/ Appliquer les patches
Code : Tout sélectionner
cd ~/LandesEternelles-source
patch -p0 < minimap.c.diff
patch -p0 < weather.c.diff
Code : Tout sélectionner
cd ~/LandesEternelles-source
make -f Makefile.linux
Nous supposons que votre binaire s'appelle le.X86_64.linux.bin
Code : Tout sélectionner
cp -p ~/LandesEternelles-source/le.X86_64.linux.bin ~/LandesEternelles/
