<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fustrateduserq</id>
	<title>Spring - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fustrateduserq"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/Fustrateduserq"/>
	<updated>2026-11-08T19:49:49Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_Linux&amp;diff=3345</id>
		<title>Building Spring on Linux</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Building_Spring_on_Linux&amp;diff=3345"/>
		<updated>2010-02-24T04:20:03Z</updated>

		<summary type="html">&lt;p&gt;Fustrateduserq: 64 bit multicore edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Building_spring|Building Spring]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
= Build From Source on Linux =&lt;br /&gt;
If prefer to use your distributions package system, refer to the Linux [[SetupGuide]].&lt;br /&gt;
&lt;br /&gt;
If there is no package tailored for your distribution, you have to install from sources manually. Doing this for distributions where packages are available is not recommended.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: #f44&amp;quot;&amp;gt;&#039;&#039;&#039;Warning: Be carefull when building from source. You might encounter sync errors in online play if you are using special compilers (all GCC from the 4.x series should be safe) or unstandard compiler settings (be carefull about -march)!&#039;&#039;&#039;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Obtaining the Source ==&lt;br /&gt;
{{Obtaining_The_Source_Code}}&lt;br /&gt;
&lt;br /&gt;
= Get Dependencies =&lt;br /&gt;
&lt;br /&gt;
You will need to install some development packages Spring depends on. These vary from distro to distro and may also depend on your specific configuration.&lt;br /&gt;
&lt;br /&gt;
If your distributions is not listed below, you should be able to figure out the correct package names from this. The scons configure will whine if you forget something, but it does not check if you remembered to install zip, even though you still need it.&lt;br /&gt;
&lt;br /&gt;
== Full list ==&lt;br /&gt;
* Programs necessary to build&lt;br /&gt;
** cmake&lt;br /&gt;
** 7zip (aka p7zip)&lt;br /&gt;
** The usual build toolchain&lt;br /&gt;
*** gcc&lt;br /&gt;
*** make&lt;br /&gt;
* Libraries&lt;br /&gt;
** SDL&lt;br /&gt;
** boost (version 1.35 or later)&lt;br /&gt;
*** threads&lt;br /&gt;
*** regex&lt;br /&gt;
*** signals&lt;br /&gt;
*** system&lt;br /&gt;
** DeviL (IL, ILU)&lt;br /&gt;
** OpenAL (openal-soft, older openal-0.0.8 does not work)&lt;br /&gt;
** OpenGL headers (mesa, glew, etc.)&lt;br /&gt;
** zlib&lt;br /&gt;
** freetype&lt;br /&gt;
** ogg,vorbis and vorbisfile&lt;br /&gt;
* Optional, for bindings and Ais&lt;br /&gt;
** Python (2.5)&lt;br /&gt;
** Java-SDK&lt;br /&gt;
&lt;br /&gt;
== Debian ==&lt;br /&gt;
&lt;br /&gt;
For Etch (debian 4.0 stable) and Sid (debian unstable), I&#039;ve confirmed the&lt;br /&gt;
following to be the minimal set that is necessary to get. This works with Ubuntu 8.10, too.&lt;br /&gt;
The version of spring from git repository depends on boost at least version 1.35.* (if your distro is behind you can try [https://launchpad.net/~pgquiles/+archive/ppa some unofficial backports]) and won&#039;t work on lower versions. &lt;br /&gt;
&lt;br /&gt;
Also, on 64-bit be sure to build against devIl 1.6.8-rc2 or higher, 1.6.7 has a bug in the PNG loading code that causes issues.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential zlib1g-dev libfreetype6-dev&lt;br /&gt;
sudo aptitude install libsdl1.2-dev libopenal-dev libglew-dev zip&lt;br /&gt;
sudo aptitude install libvorbis-dev libxcursor-dev libdevil-dev&lt;br /&gt;
sudo aptitude install libboost-system1.37-dev libboost-system1.37-thread-dev&lt;br /&gt;
sudo aptitude install libboost-system1.37-regex-dev &lt;br /&gt;
sudo aptitude install libboost-system1.37-serialization-dev&lt;br /&gt;
sudo aptitude install libboost-system1.37-program-options-dev&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and either scons and python2.5-dev or cmake, depending on what you use for building (I advise to use cmake).  On debian 5.0 (lenny), libglew1.5-dev is required as well.&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu 8.04 ===&lt;br /&gt;
Additionally you will need to install these packages:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
apt-get install p7zip-full libboost-thread1.40-dev libboost-regex1.40-dev&lt;br /&gt;
apt-get install libboost-program-options1.40-dev libboost-signals1.40-dev &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
(or exchange the libboost 1.40 for 1.37 if you&#039;re using that version)&lt;br /&gt;
&lt;br /&gt;
== Gentoo ==&lt;br /&gt;
This has been tested to work with a clean install of gentoo 2008.0:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
emerge cmake \&amp;gt;=media-libs/freetype-2.0.0 \&amp;gt;=media-libs/libsdl-1.2.0&lt;br /&gt;
emerge media-libs/openal media-libs/glew dev-libs/boost&lt;br /&gt;
emerge app-arch/zip media-libs/libogg&lt;br /&gt;
USE=&amp;quot;png jpg tiff opengl&amp;quot; emerge media-libs/devil &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fedora ==&lt;br /&gt;
&lt;br /&gt;
On Fedora 8, these dependencies should be sufficient:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install cmake boost-devel openal-devel SDL-devel \&lt;br /&gt;
DevIL-devel glew-devel libvorbis-devel &lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On Fedora 12, these dependencies should be sufficient:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install gcc-c++ cmake boost-devel DevIL-devel freetype-devel \&lt;br /&gt;
glew-devel libvorbis-devel libXcursor-devel openal-devel SDL-devel p7zip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Slackware ==&lt;br /&gt;
&lt;br /&gt;
On Slackware 13, cmake, ogg vorbis, boost, glew and SDL already come with the full regular install, both libs and headers. Also [http://slackbuilds.org/ here] you will find helper scripts to easily compile and package DEvIL, openAL and spring itself.&lt;br /&gt;
&lt;br /&gt;
= Build And Install =&lt;br /&gt;
&lt;br /&gt;
== Using CMake (2.6 or newer) ==&lt;br /&gt;
Configure and build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cmake .&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Your paths are: Spring executable in &amp;lt;code&amp;gt;/usr/local/bin/spring&amp;lt;/code&amp;gt; and&lt;br /&gt;
read-only data in &amp;lt;code&amp;gt;/usr/local/share/games/spring&amp;lt;/code&amp;gt;. If you want &amp;lt;code&amp;gt;/usr&amp;lt;/code&amp;gt; prefix instead &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt; do the compilation in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
cmake -DCMAKE_INSTALL_PREFIX=/usr .&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, If you experience performance problems on multi core 64 bit systems, try these additional commands: &lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cmake -DUSE_GML=1 -DUSE_GML_SIM=1 .&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
And install as shown previously&lt;br /&gt;
&lt;br /&gt;
== Using Scons ==&lt;br /&gt;
Configure and build:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
scons configure&lt;br /&gt;
scons&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
scons install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{Finalizing_linux_install}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
{{Troubleshooting_linux}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Compiling]]&lt;/div&gt;</summary>
		<author><name>Fustrateduserq</name></author>
	</entry>
</feed>