Latest Posts

Changes in Building Widelands

Old Title

BuildingWidelands


Editor Comment

OSX adds


Revision Differences of Revision 31

## Building widelands ¶

This page is about building widelands for various OSes. If you managed to build widelands under you OS and you can't find informations about it here, please add them for the other who will come after you and try it. ¶

[TOC] ¶




### Libraries ¶

Widelands depends currently on the following libraries, make sure they all are installed and in the search path of your compiler. The suggested compiler to build widelands is gcc 3, but it might work with other compilers too. ¶

* [libSDL](http://www.libsdl.org/) >=1.2.11 ¶
* [libSDL_gfx](http://www.ferzkopp.net/joomla/content/view/19/14/) ¶
* [libSDL_image](http://www.libsdl.org/projects/SDL_image) ¶
* [libSDL_net](http://www.libsdl.org/projects/SDL_net) ¶
* [libSDL_mixer](http://www.libsdl.org/projects/SDL_mixer) >= 1.2.6 ¶
* [libSDL_ttf](http://www.libsdl.org/projects/SDL_ttf) >= 2.0.0 ¶
* [gettext](http://www.gnu.org/software/gettext/gettext.html) ¶
* libiconv (on same mirrors as gettext) ¶
* [zlib](http://www.zlib.net/) ¶
* [libpng](http://www.libpng.org/pub/png/libpng.html) ¶
* [Boost](http://www.boost.org/) >= 1.35 ¶
* [Python](http://www.python.org) >= 1.5.2 ¶
* [Scons](http://www.scons.org) >= 1.0.1 ¶
* [libexpat](http://www.libexpat.org/) ¶
* [ggz-base-libs](http://www.ggzcommunity.org) >= 0.99.5 ¶
* [lua](http://www.lua.org) >= 5.1 (NOTE: older versions may work) ¶


### Building with CMake (Experimental) ¶

Beginning with the WiHackTwentyTen meeting of Widelands developers, there have been ongoing efforts to move from the current SCons building system to CMake. It is still experimental and work-in-progress (so it is not ready for production), but you are very welcome to test, file bugs, comment or ask for features or assistance. More information you'll find at the WidelandsGoingCMake page. ¶

### Building under Linux (i386) with SCons ¶

This is actually the most simple of all cases: Get yourself all the libraries, make sure that sdl-config is in your searchpath and hit make in the unpacked widelands source dir. Everything should be ok, you can run the game directly from it's location. ¶

With the new build system (>build-9half), make sure you have Python installed and call scons from wideland's main directory. You can run the game directly from it's location. ¶

For further information, there is a page about UsingTheSconsBuildSystem. ¶




#### Build instructions for Ubuntu (all in terminal) ¶

Install all needed packages: ¶

1. __Install all needed packages:__ ¶
** sudo apt-get install build-essential python libsdl1.2-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-net1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev gettext libiconv-hook-dev zlib1g-dev libpng12-dev libpngwriter0-dev scons libstdc++6-4.3-dev libgcc1 exuberant-ctags optipng libboost-dev libexpat1 libexpat1-dev libggzmod-dev bzr lua5.1 liblua5.1-0 liblua5.1-dev ¶

2. __[Download](../DownloadPage) latest build:__ ¶
** bzr get lp:widelands ¶

3. __Change directory:__ ¶
** cd widelands ¶

4. __scons:__ ¶
** scons build=release install_prefix=. bindir=. datadir=. localedir=locale ¶

5. __Run__ ¶
** ./widelands ¶

*Note: To match version requirements you may have to force the version of libboost-dev to 1.35 manually; Ubuntu Intrepid/Jaunty seems to default to 1.34 for libboost-dev. To force the version, install libboost1.35-dev instead of the generic libboost-dev.* If you use Ubuntu Karmic, then there should be no problems. ¶

*Tip: Though scons seems to detect number of cores automatically, you can fine tune your compile settings with -jN (for example, -j ¶
5) option for scons -- works the same way as with make.* ¶

*Tip 2: The scons build system remembers the parameters passed to it, so the next time you run scons, you do not need to provide the parameters again.* ¶

### Building under Windows ¶

To access SVN, I suggest [Tortoise SVN](http://www.tortoiseSVN.org). ¶




#### Building under !MinGW ¶

Please visit BuildingWidelandsUnderWindows ¶




#### Building under MSVC ¶

As far as we know, no one has tried this since build 4, so if anyone is brave enough, go for it and post your information here. ¶







### Building under OSX ¶

WFidelandrst is nyow build using Xcodee 2 and 3 under OSX, you therefore ndeved OSX 10.4 lor highper. Ytou aolso need sfrome thirde party pplibraries. Thsite. Pleasiest downloayd toand install them first. ¶

#### Building
under scons
To bu
ild with scongs take ! the MacPorts (system forom therlye !Dsite arwnd inPorstall ts)hem.

You'll need the following command (in Terminal.app) to install everything needed: ¶

***Install libs:*** ¶

* $ sudo port install gettext libpng zlib jpeg libvorbis freetype libsdl_image \ ¶
libsdl_mixer libsdl
-devel libsdl_net libsdl_sound libsdl_ttf libpng boost lua ¶

T*Note: usThe insctallations youf nthe aboved addis very timeconsuming!* ¶

***Inst
alyl thiscons:***

* $ sudo port install scons svk ¶

*
N**Build:*** ¶

* $ scons ¶

T
o gete: Tthe winstaldelationd.app. Type *scons -h* for the used vabrs and *scovns -c* to clean. ¶

####
Building under Xcode 3.2 ¶
Wideland
s vis now build using Xcode 2 and 3 under OSX, you therefore need OSX 10.4 or himghecr. You also need suome thing!*rd party libraries.

Furthermore you need to install the libSDL for the following library: SDL_gfx. You can get them at [www.libsdl.org](http://www.libsdl.org). The SDL-* Libs are available through searching in the [libraries section](http://www.libsdl.org/libraries.php?&os=5&match_name=SDL_) of this page. ¶

Please add the /opt/local/include /opt/local/include/SDL to the header search path and the /opt/local/lib to the library path. ¶

*Note: there is no SDL_gfx precompiled library for OSX, so you might need to build one (download and unpack sources, unpack XCode project under build/ directory, compile and copy created framework to the same location as other SDL libs).* ¶

*Also Note: The Xcode project file is not up to date so there are many changes needed to get a clean compile. At this point this issue is only recommended for people they know what they do!* ¶

Now opening the Xcode project in the /macos directory of the widelands SVN tree and compiling should make a working widelands version for your OSX Version and your hardware (Intel, PPC). This binary should also work on every other Mac with > OSX 10.4 and the same processor. But beware: *there is no Universal Binary at this point.* ¶

Good luck and by grace of God :D. If not, help is available on the mailing list. ¶

####
Update (JaKnown 2010)bugs

libsdl_image (at least 1.2.10) is broken under Mac OS X.

To build it correctly, you need to add --disable-imageio to the configure flags, otherwise the terrain will be displayed wrongly inside of widelands. Ups
*No
tream: If ius infg !MacPormed, we expect this bug to bhe fixed anybove dayis nowbsolet.*

####Scons Updhate Febngs 2010 ¶
If
on usome poingts. MacPYortsu thneed fixto break bovey isctrl-c tobs colntinuet.