Difference between revisions of "Guide to FS Open on Linux"
m (some little formatting...) |
|||
Line 4: | Line 4: | ||
== Installing CVS == | == Installing CVS == | ||
− | CVS stands for Concurrent Versions System and is a version control system used to record the changes in documents, such as a source files. Developers use CVS so they can easily share their code changes among other developers. | + | CVS stands for Concurrent Versions System and is a version control system used to record the changes in documents, such as a source files. Developers use CVS so they can easily share their code changes among other developers. You will need this tool to download ("checkout" in CVS termology) fs2_open from the CVS server. |
− | You will need this tool to download( "checkout" in CVS termology ) fs2_open from the CVS server. | + | <br><br> |
− | |||
Use your package tool supplied by your distribution to download and install CVS. | Use your package tool supplied by your distribution to download and install CVS. | ||
− | Debian users want to: | + | '''Debian''' users want to: |
apt-get install cvs | apt-get install cvs | ||
− | Gentoo users want to: | + | '''Gentoo''' users want to: |
emerge cvs | emerge cvs | ||
== Installing Dev Libs == | == Installing Dev Libs == | ||
− | You will also need OpenAL, libvorbis, OpenGL(most likely provided with your videocard driver), | + | You will also need OpenAL, libvorbis, OpenGL (most likely provided with your videocard driver), and LUA development packages (you dont need LUA if you dont need LUA scripting enabled, it wont go b0rk the compile if it cant find it). And ofcourse the GCC compiler and required make tools. |
− | and LUA development packages( | + | <br><br> |
− | And ofcourse the GCC compiler and | + | '''Debian''' want to: |
− | |||
− | Debian want to: | ||
apt-get install libopenal-dev libvorbis-dev build-essential | apt-get install libopenal-dev libvorbis-dev build-essential | ||
− | Gentoo want to: | + | '''Gentoo''' want to: |
emerge openal libvorbis | emerge openal libvorbis | ||
− | Before you begin, make sure you are situated in a a directory where you have write permissons. | + | Before you begin, make sure you are situated in a a directory where you have write permissons. Your /home/user/ directory is pretty much a sure bet. I recommend that you create a permanent home/user/dev directory from which you run the CVS command, this way CVS will only update the files changed the next time you download the source. |
− | Your /home/user/ directory is pretty much a sure bet. I recommend that you create a permanent home/user/dev directory from which you run the CVS command, this way CVS will only update the files changed the next time you download the source. | ||
== Using the source == | == Using the source == | ||
Line 31: | Line 27: | ||
Now get the source. Run from a terminal: | Now get the source. Run from a terminal: | ||
− | cvs -d:pserver:anonymous:[email protected]:/home/fs2source/cvsroot | + | cvs -d:pserver:anonymous:[email protected]:/home/fs2source/cvsroot login |
+ | and then | ||
cvs -z3 -d:pserver:[email protected]:/home/fs2source/cvsroot co fs2_open | cvs -z3 -d:pserver:[email protected]:/home/fs2source/cvsroot co fs2_open | ||
− | The first cvs command tells the CVS tool to first use a password file for authentication( pserver ), that you | + | The first cvs command tells the CVS tool to first use a password file for authentication (pserver), that you are user "anonymous" with the password "anonymous" who wants to access warpcore.org's CVS repository "/home/fs2source/cvsroot" and login. The second command tells the CVS server on which we are now connected to that we want to checkout (co) the fs2_open module. |
− | are user "anonymous" with the password "anonymous" who wants to access warpcore.org's CVS repository "/home/fs2source/cvsroot" and login. | + | <br><br> |
− | The second command tells the CVS server on which we are now connected to that we want to checkout( co ) the fs2_open module. | + | Because 99,999% of all computer errors can be traced back to human-to-keyboard mishaps (linguistically proven by yours truly), I've written a quick bash script that will get the source for you. Save this and name it something appropriate like "get-fs2_open", and make it executable (<tt>chmod +x get-fs2_open</tt>). |
− | |||
− | Because 99,999% of all computer errors can be traced back to human-to-keyboard mishaps | ||
− | (linguistically proven by yours truly), | ||
− | I've written a quick bash script that will get the source for you. | ||
− | |||
− | Save this and name it something appropriate like "get-fs2_open", and make it executable( <tt>chmod +x get-fs2_open</tt> ). | ||
#!/bin/bash | #!/bin/bash | ||
# CVS Checkout Script for fs2_open | # CVS Checkout Script for fs2_open | ||
Line 50: | Line 41: | ||
let CVS_ATTEMPT=1 | let CVS_ATTEMPT=1 | ||
done | done | ||
− | NOTE: This script will run until it successfully downloaded fs2_open, abort it with CTRL+C | + | NOTE: This script will run until it successfully downloaded fs2_open, abort it with CTRL+C (originally designed to hammer SourceForge's CVS server). Run the script from a terminal (<tt>./get-fs2_open</tt>) and wait for it to download the source files. |
− | ( | ||
− | Run the script from a terminal( <tt>./get-fs2_open</tt>) and wait for it to download the source files. | ||
=== Building === | === Building === | ||
Line 59: | Line 48: | ||
From that fs2_open directory run in a terminal: | From that fs2_open directory run in a terminal: | ||
./autogen.sh | ./autogen.sh | ||
− | autogen.sh is a script that will generate the required makefiles. You will see alot of "checking for this" and "checking for that", this is actually the "configure" script ( which can be run with <tt>./configure</tt> if you need to change the options) | + | autogen.sh is a script that will generate the required makefiles. You will see alot of "checking for this" and "checking for that", this is actually the "configure" script (which can be run with <tt>./configure</tt> if you need to change the options) examining and configuring fs2_open for your system. |
Now run: | Now run: | ||
Line 67: | Line 56: | ||
=== Using the Binaries === | === Using the Binaries === | ||
− | When the compile is done and if all went well, a binary executable will reside in the code directory | + | When the compile is done and if all went well, a binary executable will reside in the code directory ''fs2_open_r'' or ''fs2_open_d'' if you configured for a debug build. Move the binary to where you got your mediaVP's and your all set to go. |
− | fs2_open_r or fs2_open_d if you configured for a debug build. | ||
− | Move the binary to where you got your mediaVP's and your all set to go. |
Revision as of 08:38, 30 January 2006
This HOWTO was written by bottomfan to help Freespace fans get the latest bleeding-edge version of fs2_open from CVS.
WARNING! Compling from CVS will let you play with the most recent features and BUGS! Yes, BUGS, compile errors, strange game behavior and/or angry monkeys attacking you. Murphy's Law is very much in effect!
Contents
Installing CVS
CVS stands for Concurrent Versions System and is a version control system used to record the changes in documents, such as a source files. Developers use CVS so they can easily share their code changes among other developers. You will need this tool to download ("checkout" in CVS termology) fs2_open from the CVS server.
Use your package tool supplied by your distribution to download and install CVS.
Debian users want to:
apt-get install cvs
Gentoo users want to:
emerge cvs
Installing Dev Libs
You will also need OpenAL, libvorbis, OpenGL (most likely provided with your videocard driver), and LUA development packages (you dont need LUA if you dont need LUA scripting enabled, it wont go b0rk the compile if it cant find it). And ofcourse the GCC compiler and required make tools.
Debian want to:
apt-get install libopenal-dev libvorbis-dev build-essential
Gentoo want to:
emerge openal libvorbis
Before you begin, make sure you are situated in a a directory where you have write permissons. Your /home/user/ directory is pretty much a sure bet. I recommend that you create a permanent home/user/dev directory from which you run the CVS command, this way CVS will only update the files changed the next time you download the source.
Using the source
Downloading
Now get the source. Run from a terminal:
cvs -d:pserver:anonymous:[email protected]:/home/fs2source/cvsroot login
and then
cvs -z3 -d:pserver:[email protected]:/home/fs2source/cvsroot co fs2_open
The first cvs command tells the CVS tool to first use a password file for authentication (pserver), that you are user "anonymous" with the password "anonymous" who wants to access warpcore.org's CVS repository "/home/fs2source/cvsroot" and login. The second command tells the CVS server on which we are now connected to that we want to checkout (co) the fs2_open module.
Because 99,999% of all computer errors can be traced back to human-to-keyboard mishaps (linguistically proven by yours truly), I've written a quick bash script that will get the source for you. Save this and name it something appropriate like "get-fs2_open", and make it executable (chmod +x get-fs2_open).
#!/bin/bash # CVS Checkout Script for fs2_open CVS_ATTEMPT=0 until [ $CVS_ATTEMPT = 1 ]; do cvs -d:pserver:anonymous:[email protected]:/home/fs2source/cvsroot login && \ cvs -z3 -d:pserver:anonymous:[email protected]:/home/fs2source/cvsroot co fs2_open && \ let CVS_ATTEMPT=1 done
NOTE: This script will run until it successfully downloaded fs2_open, abort it with CTRL+C (originally designed to hammer SourceForge's CVS server). Run the script from a terminal (./get-fs2_open) and wait for it to download the source files.
Building
In the directory you ran the CVS command from, a new directory will appear, namely fs2_open. From that fs2_open directory run in a terminal:
./autogen.sh
autogen.sh is a script that will generate the required makefiles. You will see alot of "checking for this" and "checking for that", this is actually the "configure" script (which can be run with ./configure if you need to change the options) examining and configuring fs2_open for your system.
Now run:
make
Sit back and enjoy gcc work its magic.
Using the Binaries
When the compile is done and if all went well, a binary executable will reside in the code directory fs2_open_r or fs2_open_d if you configured for a debug build. Move the binary to where you got your mediaVP's and your all set to go.