Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

SetupGuide: Difference between revisions

From FIGHTORDER
imported>Tobi
copy http://taspring.clan-sy.com/phpbb/viewtopic.php?p=52819#52819
 
imported>Jobarjo
added snap installation method
 
(428 intermediate revisions by 67 users not shown)
Line 1: Line 1:
== SetupGuide ==
=Linux/Unix Setup Guide=


* If you're running [http://www.gentoo.org Gentoo linux], you're lucky, because [http://download.berlios.de/taspring-linux/taspring-linux-svn-ebuild-0.67-r3.tar.bz2 an ebuild is already available]. If not, a short walk-trough to compile, run and debug spring on provided below.
{{#css:
  table.glossy {
    margin: 4px; padding:10px;
    border: 1px solid rgba(0,0,0,0.5);
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
    text-align: center;
  }
  /*table.glossy:hover {
    background: rgba(160,160,220,0.4);
  }*/
}}


* In short, to get spring compiled under linux, make sure you've got all necessary development packages installed. On [http://www.ubuntu.com/ (K)Ubuntu linux], and maybe [http://www.debian.org/ Debian] too, this can be done by copying the following in a terminal (or use the graphical package manager Synaptic or Adept if you can't stand commandline):<br><br><code>apt-get install build-essential subversion scons libsdl-dev libopenal-dev libglew-dev libboost-dev libboost-thread-dev libboost-filesystem-dev libboost-regex-dev libdevil-dev libfreetype6-dev</code><br><br>For any other distribution, grab these libraries and the base development packages too (for Gentoo, base development packages aren't needed, because everything is compiled from source: they're already installed). I've no clue about RPM based distros. But [http://www.google.com google] is your friend.


* To grab the sourcecode from SVN (using commandline SVN), refer to [https://developer.berlios.de/svn/?group_id=4358 this berlios page about SVN]. Use one of the two anonymous checkout methods (upper two) unless you're a spring developer (but in that case you wouldn't be reading this, right?).


* To compile the sourcecode, switch to the trunk directory created by the svn checkout in the previous step. Then type: <code>scons configure</code> to configure the build. (You can fine tune the build by passing options to this command [for enabling debugging/optimizing etc.]. Type <code>scons --help</code> to view the available options.) Now, if you really installed all development package, the scons configure will output: "Everything seems OK. Run `scons' now to build.". If it outputs with an error you're probably missing a development package.
{| style="width:70%; margin-left:15%; margin-right:15%;" |


* As instructed on end of previous step, type: <code>scons</code> Spring will now build including NTAI, JCAI and a few GroupAIs. You should end up with a file trunk/game/spring (the executable) and some shared objects (SOs or DLLs) in trunk/game/aidll.  
|{{Template:LinuxSetupGuideButton|name=From Source|link=Build_from_source|icon=Git.png}}


* Now, grab [https://developer.berlios.de/project/showfiles.php?group_id=4358 the linux data tarball from berlios] and extract it somewhere (or use your windows datafiles for this step if you can acces them from linux). mkdir (make directories) game/base, game/maps and game/mods and put respectively the base files, the mod file(s) and your map file(s) in it.
|{{Template:LinuxSetupGuideButton|name=Snaps|link=Snaps_install }}


* Now run spring by cd'ing (change dir) to the trunk/game directory and typing: <code>./spring</code> If you've compiled with debugging enabled, you might want to run inside gdb to provide the devs with a backtrace if spring crashes: <code>gdb ./spring</code><br>Basic commands inside gdb are:
|{{Template:LinuxSetupGuideButton|name=Ubuntu|link=Ubuntu_install|icon=Distributions-ubuntu.png}}
** <b>r</b>un - Run the program (spring)
** <b>bt</b> - Print a backtrace
** <b>q</b>uit - Quit
** <b>help</b> - This one's important 


* Be happy!
|{{Template:LinuxSetupGuideButton|name=Gentoo|link=Gentoo_install|icon=Distributions-gentoo.png}}


Even a tip: If spring hangs/crashes while in full screen mode, you can press ctrl+alt+backspace to restart X, so no need for a reboot.
|-


If you really can't figure out how to get spring compiled, or you think there's a bug in the code or the buildsystem, just poke any developer on IRC (channel #taspring on FreeNode or channel #sy on QuakeNet), post it on the forum, or file a bug in our [http://taspring.clan-sy.com/mantis/ BTS].
|{{Template:LinuxSetupGuideButton|name=Slackware|link=Slackware12_install|icon=Distributions-slackware.png}}
 
|{{Template:LinuxSetupGuideButton|name=Debian|link=Debian_install|icon=Distributions-debian.png}}
 
|{{Template:LinuxSetupGuideButton|name=Mandriva|link=Mandriva_install|icon=Distributions-mandriva_linux.png}}
 
|-
 
|{{Template:LinuxSetupGuideButton|name=openSUSE|link=openSUSE_install|icon=Distributions-opensuse_linux.png}}
 
|{{Template:LinuxSetupGuideButton|name=Fedora|extlink=http://projects.springlobby.info/projects/springlobby/wiki/Install#Fedora-10|icon=Distributions-fedora.png}}
 
|{{Template:LinuxSetupGuideButton|name=FreeBSD|link=FreeBSD_install|icon=Distributions-freebsd.png}}
|}
 
 
<span style="float:right">[[Linux:Packaging | Package Maintainers]]</span>
 
[[Category:Linux]]

Latest revision as of 20:56, 11 February 2019

Linux/Unix Setup Guide

{{#css:

 table.glossy {
   margin: 4px; padding:10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 /*table.glossy:hover {
   background: rgba(160,160,220,0.4);
 }*/

}}


{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}

{{#css:
 .glossy {
   width:   100px;
   margin:  4px;
   padding: 10px;
   border: 1px solid rgba(0,0,0,0.5);
   border-radius: 10px 10px 10px 10px;
   box-shadow: 0 2px 6px rgba(0,0,0,0.5), inset 0 1px rgba(255,255,255,0.3), inset 0 10px rgba(255,255,255,0.2), inset 0 10px 20px rgba(255,255,255,0.25), inset 0 -15px 30px rgba(0,0,0,0.3);
   text-align: center;
 }
 .glossy:hover {
   background: rgba(200,200,240,0.3);
 }
 .foo {
   font-size: 200pt;
   position: absolute;
   top:    0;
   left:   0;
   width:  140px;
   height: 100%;
   overflow: hidden;
   color:   rgba(0,0,0,0);
 }
 .foo img {
   width:  120px;
   height: 100%;
 }

}}


Package Maintainers