Jump to content
Eternal Lands Official Forums
Sign in to follow this  
LabRat

Is there a from scratch linux compilation guide?

Recommended Posts

I just installed Ubuntu Feisty Fawn 7.04

 

I got it compiled, if there is no install guide I will do a walkthrough including all the apt-get steps, cvs, file moving and editing required to get it running.

 

Was the linux install walkthrough lost in the big hack attack?

 

If one exists, feel free to delete the thread :happy:

 

tinyurl link to this page: http://tinyurl.com/32kpua

Edited by LabRat

Share this post


Link to post
Share on other sites

This will need to be proofread and quite possibly rewritten for clarity, here is the third draft (I wiped my system and wrote each line as I did it, anyone fancy dusting off an old hard drive to verify my stages?)

Installing the CVS client on a fresh ubuntu Feisty Fawn 7.04 install

#[Applications\Accessories\Terminal]

#Now we need to get any required libraries for compilation of the client, the CVS package

sudo apt-get -y install cvs libbz2-dev zlib1g-dev libgdbm-dev libxml2-dev libsdl1.2-dev libsdl-ttf2.0-dev xlibmesa-gl-dev freeglut3-dev vorbis-tools libopenal-dev libsdl-image1.2-dev libsdl-net1.2-dev libxml-dev libalut-dev libvorbis-dev libcal3d11-dev libalut-dev g++

mkdir ~/cvs

cd ~/cvs

 

#The next bit will make the cvs download more efficient (thanks RallosZek)

cat <<EOF >~/.cvsrc

cvs -z3

checkout -P

update -P

diff -u

status -v

EOF

 

cvs -d:pserver:anonymous@cvs.elc.berlios.de:/cvsroot/elc login

#it will now ask 'CVS password:', just press Enter (no password required)

cvs -z3 -d:pserver:anonymous@cvs.elc.berlios.de:/cvsroot/elc co elc

#you should now see lots of U elc/ files scrolling up your screen

cd ~/cvs/elc

cp make.defaults make.conf #Thanks Schmurk

echo 'FEATURES+=PNG_SCREENSHOT' >> make.conf #Thanks RallosZek

make -f Makefile.linux

#

#Let's check if we have the newly compiled client:

ls el.x86.linux.bin -al

#if you see 'No such file or directory' you missed a step, review your console history

#

#If you see:

#-rwxr-xr-x 1 root root 6377420 2007-04-24 12:07 el.x86.linux.bin

#or similar (date/time will vary)

#Congratulations! You just compiled the CVS client!

#

#

#Now for a little housekeeping

#we need to get the eternal lands linux client, install it and move a few things around to make everything work

#Go to http://www.eternal-lands.com/page/download.php and download the linux version of the EL client

#extract the client somewhere, I chose my Desktop

### This step is crucial:

### The folder will have been called "Eternal Lands-n.nn", you need to rename the folder "EternalLands-n.nn" (remove the space (' '))

#Open the folder, edit el.ini, find '#data_dir = /usr/local/games/el/'

#Change '/usr/local/games/el/' to wherever you installed the game, in my particular case '/home/greg/Desktop/EternalLands-1.33/'

#

#

#We now need to set up all the game settings etc, luckily the game itself will do that when you run it :)

#run el-133.x86.linux.static (double click on it), log in with your username and password

#The game may restart shortly after you log in, this is just the game updating some files and is perfectly normal.

#

#

#To run the CVS version, we need to copy a few files over from /elc/ into the EternalLands-n.nn directory

#go back to the Terminal window

cd ~/Desktop #Yours may differ depending on where you extracted the zip file

#we will use tab completion for the next line: press Tab when you see [Tab]

cd Eter[Tab]

#the line should now read EternalLands-n.nn, press Enter

mkdir tmp

mkdir custom

chmod 777 tmp

chmod 777 custom

mkdir textures/eye_candy

cp -r ~/cvs/elc/eye_candy/textures/* textures/eye_candy/

cp -r ~/cvs/elc/languages/en/strings/titles.xml languages/en/strings/titles.xml

cp ~/cvs/elc/el.x86.linux.bin .

cat <<EOF >custom_mirrors.lst

grnf.be.labby.is-a-geek.com

EOF

exit

#

#

#

#Congratulations, you now have everything done to update, compile and execute the CVS client.

#

#Your next stage would be to install the drivers for your graphics card, I will leave that up to you and your friend http://www.google.com

or the ubuntu online documentation (thanks Schmurk)

#

#to run the CVS client, double click on el.x86.bin wherever you extracted the zip file

All comments, corrections etc are greatly welcomed, indeed begged for :)

 

Thanks to the following people for their input:

Ralloszek (save cvs in your home directory, speedup of cvs downloads, proofreading, enabling screenshot)

Schmurk (using sudo instead of switching to the root user, overwriting make.conf with make.defaults, refer to ubuntu online documentation rather than google.com)

Alia (adding cal3d version number to apt-get line)

 

***

I am in two minds whether to do a wget of the client or not (to save the requirement to find the download page)

***

Please ignore the following lines:

 

open make.conf, uncomment

#FEATURES += AUTO_UPDATE					 # enable minor automatic file updating
#FEATURES += CUSTOM_UPDATE				   # allows autoupdating of custom look information

and comment

FEATURES += NEW_E3D_FORMAT				  # Enables the new e3d file format. Only works with files in the new file format! Needs NEW_FRUSTUM.

to give you:

FEATURES += AUTO_UPDATE					 # enable minor automatic file updating
FEATURES += CUSTOM_UPDATE				   # allows autoupdating of custom look information
#FEATURES += NEW_E3D_FORMAT				  # Enables the new e3d file format. Only works with files in the new file format! Needs NEW_FRUSTUM.

Edited by LabRat

Share this post


Link to post
Share on other sites

I wouldn't do the cd / but rather mkdir ~/cvs && cd ~/cvs. Before logging into the berlios server, highly recommended:

cat <<EOF >~/.cvsrc

cvs -z3

checkout -P

update -P

diff -u

status -v

EOF

Share this post


Link to post
Share on other sites

Few comments:

  • as being an Ubuntu user too, I will recommend to not change the root password and ever use the sudo command. BTW, in your howto, you're compiling the code with the root account in your home directory :)
  • not far ago, the make.conf file was not the same than the make.defaults file in the CVS. I don't know if it has changed now but I recommend to overwrite the make.conf file by the make.defaults file before starting the compilation.
  • if the goal of the howto is getting the CVS compiled on an ubuntu, their online documentation is very nice and explain how to install video drivers so I suggest going to see there before using google ;)

Out of this, the rest is OK, well done. :)

Share this post


Link to post
Share on other sites

It would be nice if you write minimum lib versions.

For example debian stable (sarge) libcal3d is too old and elc doesnt compile with it.

There might be other similar issues.

Share this post


Link to post
Share on other sites

This will need to be proofread and quite possibly rewritten for clarity, here is the second draft (I wiped my system and wrote each line as I did it, anyone fancy dusting off an old hard drive to verify my stages?)

cd Eter[Tab]

#the line should now read EternalLands-n.nn, press Enter

mkdir eyecandy

cp -r ~/cvs/elc/eye_candy/textures/ eyecandy/

cp ~/cvs/elc/el.x86.linux.bin .

 

mkdir eye_candy (underscore). At least that's what my error_log is filled with :)

 

[edit]

Hmm, bit confused now. You said you had it working, but the eye candy textures should go into:

ELDIR/textures/eye_candy

and the above isn't anywhere near that. I myself did it this way:

mkdir /usr/local/share/el/textures/eye_candy

cp -r ~/cvs/elc/eye_candy/textures/[0-9]* /usr/local/games/el/textures/eye_candy/

 

Based on this entry in error log:

ERROR: Cannot load texture './textures/eye_candy/128x128/snowflake.png'.

[/edit]

Maybe add the following:

Tab maps, spell lists, counters and mapmarks are platform independent. If you want to copy them over, then:

  • Tab maps go into the main install dir, in the maps subdirectory, just like on windows.
  • mapmarks, counters, spell lists go into ~/.elc/ of the user that runs el.

Another sidenote:

By default in-game screenshots are disabled in make.defaults. If you want this very handy feature, that allows you to make a screenshot in-game using CTRL-P, just do the following before running make:

 

echo 'FEATURES+=PNG_SCREENSHOT' >> ~/cvs/elc/make.conf

 

Screenshots end up in ~/.elc/screenshots/ for the user that runs el.

Edited by RallosZek

Share this post


Link to post
Share on other sites

I switched to RedHat (community edition) in 1996. from Slackware and since than I use this wonderful distribution.

Compiling ELC under Fedora/RedHat ( http://www.fedoraproject.org ) was pretty much straightforward if you have all necessary packages installed. If you do not than just install them via yum. It is worth of notice that ALL necessary packages ARE in the Fedora RPM repository (extras), so, for an instance, if you do not have Cal3D installed, just do this as root: yum intall cal3d-devel .

The only non-automatic thing that you have to do is to checkout latest CVS version of ELC from Berlios, and build it via: make -f Makefile.linux release . It cannot be easier!

Share this post


Link to post
Share on other sites
I switched to RedHat (community edition) in 1996. from Slackware and since than I use this wonderful distribution.

Compiling ELC under Fedora/RedHat ( http://www.fedoraproject.org ) was pretty much straightforward if you have all necessary packages installed. If you do not than just install them via yum. It is worth of notice that ALL necessary packages ARE in the Fedora RPM repository (extras), so, for an instance, if you do not have Cal3D installed, just do this as root: yum intall cal3d-devel .

The only non-automatic thing that you have to do is to checkout latest CVS version of ELC from Berlios, and build it via: make -f Makefile.linux release . It cannot be easier!

Then make a from scratch guide for that version of linux, I am sure people would be grateful for it :)

Share this post


Link to post
Share on other sites

It would be nice if you write minimum lib versions.

For example debian stable (sarge) libcal3d is too old and elc doesnt compile with it.

There might be other similar issues.

 

debian stable is called etch a while

Share this post


Link to post
Share on other sites

This should probably be edited up and sticky'd so others can find what libs need to be installed (just spent 20 mins trawling the forums).

Share this post


Link to post
Share on other sites

I think the cal3d needs to be libcal3d12-dev now. I know this thread is a bit old now but I'd like to give a hardy Thank You! for it.

-Rock on

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×