Difference between revisions of "MG/FreeBSD Compiling"

From MegaGlest
Jump to navigation Jump to search
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{Wikify}}
 
{{Wikify}}
 +
This page explains how to compile [[MegaGlest]] on FreeBSD.
 +
 +
==Getting the source code==
 
Get the source from svn:
 
Get the source from svn:
  
 
  svn co https://megaglest.svn.sourceforge.net/svnroot/megaglest/trunk megaglest
 
  svn co https://megaglest.svn.sourceforge.net/svnroot/megaglest/trunk megaglest
BUILD DEPENDENCIES:
 
  
Following build deps have to be met:
+
==Build dependencies==
 
+
Following build dependencies have to be met:
B-deps:<br />aalib-1.4.r5_5 autoconf-2.67 autoconf-wrapper-20071109 automake-1.9.6_4 \<br />automake-wrapper-20071109 cmake-2.8.3_1 damageproto-1.2.0 dri2proto-2.2 expat-2.0.1_1 \<br />fixesproto-4.1.1 freealut-1.1.0_2 jam-2.5_2 kbproto-1.0.4 libGL-7.4.4 libGLU-7.4.4 \<br />libX11-1.3.3_1,1 libXau-1.0.5 libXdamage-1.1.2 libXdmcp-1.0.3 libXext-1.1.1,1 \<br />libXfixes-4.0.4 libXrandr-1.3.0 libXrender-0.9.5 libXxf86vm-1.1.0 libdrm-2.4.12_1 \<br />libiconv-1.13.1_1 libogg-1.2.0,4 libpthread-stubs-0.3_3 libvorbis-1.3.1,3 libxcb-1.7 \<br />lua-5.1.4_5 m4-1.4.15,1 openal-soft-1.12.854_1 perl-5.10.1_2 pkg-config-0.25_1 \<br />randrproto-1.3.1 renderproto-0.11 sdl-1.2.14_2,2 xerces-c2-2.7.0_1 xextproto-7.1.1 \<br />xf86vidmodeproto-2.3 xproto-7.0.16 wxgtk2-unicode-2.8.10_4
+
<pre>
 
+
aalib-1.4.r5_5autoconf-2.67
Install these package e.g. from ports tree.
+
autoconf-wrapper-20071109
 +
automake-1.9.6_4
 +
automake-wrapper-20071109
 +
cmake-2.8.3_1
 +
damageproto-1.2.0
 +
dri2proto-2.2
 +
expat-2.0.1_1
 +
fixesproto-4.1.1
 +
freealut-1.1.0_2
 +
jam-2.5_2
 +
kbproto-1.0.4
 +
libGL-7.4.4
 +
libGLU-7.4.4
 +
libX11-1.3.3_1,1
 +
libXau-1.0.5
 +
libXdamage-1.1.2
 +
libXdmcp-1.0.3
 +
libXext-1.1.1,1
 +
libXfixes-4.0.4
 +
libXrandr-1.3.0
 +
libXrender-0.9.5
 +
libXxf86vm-1.1.0
 +
libdrm-2.4.12_1
 +
libiconv-1.13.1_1
 +
libogg-1.2.0,4
 +
libpthread-stubs-0.3_3
 +
libvorbis-1.3.1,3
 +
libxcb-1.7
 +
lua-5.1.4_5
 +
m4-1.4.15,1
 +
openal-soft-1.12.854_1
 +
perl-5.10.1_2
 +
pkg-config-0.25_1
 +
randrproto-1.3.1
 +
renderproto-0.11
 +
sdl-1.2.14_2,2
 +
xerces-c2-2.7.0_1
 +
xextproto-7.1.1
 +
xf86vidmodeproto-2.3
 +
xproto-7.0.16
 +
wxgtk2-unicode-2.8.10_4</pre>
  
 
Recently the build system was changed to cmake. Therefor you should just have to do:
 
Recently the build system was changed to cmake. Therefor you should just have to do:
  
 
  ./build-mg.sh
 
  ./build-mg.sh
 
 
  
 
in the megaglest directory. If you are going to compile from older version of the source tree, with jam, read on.
 
in the megaglest directory. If you are going to compile from older version of the source tree, with jam, read on.
 
 
 
'''ATTENTION: jam is needed to build MegaGlest, not make'''
 
  
 
go to megaglest/mk/linux and run
 
go to megaglest/mk/linux and run
Line 57: Line 93:
 
Now you can start MegaGlest by typing within the folder megaglest/mk/linux
 
Now you can start MegaGlest by typing within the folder megaglest/mk/linux
 
  ./glest.bin
 
  ./glest.bin
 +
 +
==Alternative method==
 +
*Retrieve two files from the [http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/155111 corresponding PR].
 +
*Get the [http://www.freebsd.org/cgi/query-pr.cgi?prp=155111-1-txt&n=/megaglest.shar megaglest.shar] and the [http://www.freebsd.org/cgi/query-pr.cgi?prp=155111-2-txt&n=/megaglest-data.sharmegaglest-data.shar] files.
 +
 +
As root user, copy or move these files to <tt>/usr/ports/games</tt> and execute them:
 +
 +
  sh megaglest.shar
 +
 +
  sh megaglest-data.shar
 +
 +
After that you'll find two new directories under <tt>/usr/ports/games</tt>: <tt>megaglest</tt> and <tt>megaglest-data</tt>
 +
 +
Go to <tt>/usr/ports/games/megaglest</tt> and install it like any other port by typing:
 +
 +
  cd /usr/ports/games/megaglest ; make install clean
 +
 +
After build and installation has finished successfully you should be able to start MegaGlest by typing:
 +
 +
megaglest
 +
 +
==See Also==
 +
*[[MegaGlest]]
 
[[Category:MG]]
 
[[Category:MG]]

Revision as of 02:40, 31 March 2011

Template:Wikify This page explains how to compile MegaGlest on FreeBSD.

Getting the source code

Get the source from svn:

svn co https://megaglest.svn.sourceforge.net/svnroot/megaglest/trunk megaglest

Build dependencies

Following build dependencies have to be met:

aalib-1.4.r5_5autoconf-2.67
autoconf-wrapper-20071109
automake-1.9.6_4
automake-wrapper-20071109
cmake-2.8.3_1
damageproto-1.2.0
dri2proto-2.2
expat-2.0.1_1
fixesproto-4.1.1
freealut-1.1.0_2
jam-2.5_2
kbproto-1.0.4
libGL-7.4.4
libGLU-7.4.4
libX11-1.3.3_1,1
libXau-1.0.5
libXdamage-1.1.2
libXdmcp-1.0.3
libXext-1.1.1,1
libXfixes-4.0.4
libXrandr-1.3.0
libXrender-0.9.5
libXxf86vm-1.1.0
libdrm-2.4.12_1
libiconv-1.13.1_1
libogg-1.2.0,4
libpthread-stubs-0.3_3
libvorbis-1.3.1,3
libxcb-1.7
lua-5.1.4_5
m4-1.4.15,1
openal-soft-1.12.854_1
perl-5.10.1_2
pkg-config-0.25_1
randrproto-1.3.1
renderproto-0.11
sdl-1.2.14_2,2
xerces-c2-2.7.0_1
xextproto-7.1.1
xf86vidmodeproto-2.3
xproto-7.0.16
wxgtk2-unicode-2.8.10_4

Recently the build system was changed to cmake. Therefor you should just have to do:

./build-mg.sh

in the megaglest directory. If you are going to compile from older version of the source tree, with jam, read on.

go to megaglest/mk/linux and run

./autogen.sh

next call the configure script this way:

./configure --with-libxerces=/usr/local --with-libOpenAL=/usr/local --with-libLibPng=/usr/local \
--with-libLibJPEG=/usr/local --with-libLibCurl=/usr/local --with-libLibX11=/usr/local \
--with-ogg-includes=/usr/local --with-vorbis=/usr/local --with-ogg=/usr/local \
--with-ogg-libraries=/usr/local/lib --with-ogg-includes=/usr/local/include \
--with-wx-config=/usr/local/bin/wxgtk2u-2.8-config

If this has finnished successfully without errors and a message like this:

Notice: This project uses jam (and not make) as build tool.

type in:

jam

If everything went well the last lines of the output of jam should look like this:
[....]
LinkApplication glest_configurator
...updated 257 target(s)...

You should create under megaglest/mk/linux a new folder:

mkdir mydata

and create some symlinks within

ln -s ../scenarios
ln -s ../data
ln -s ../maps
ln -s ../tilesets
ln -s ../techs
ln -s ../tutorials

Now you can start MegaGlest by typing within the folder megaglest/mk/linux

./glest.bin

Alternative method

As root user, copy or move these files to /usr/ports/games and execute them:

 sh megaglest.shar

 sh megaglest-data.shar

After that you'll find two new directories under /usr/ports/games: megaglest and megaglest-data

Go to /usr/ports/games/megaglest and install it like any other port by typing:

 cd /usr/ports/games/megaglest ; make install clean

After build and installation has finished successfully you should be able to start MegaGlest by typing:

megaglest

See Also