Building Mapguide on Ubuntu 7.04 Server

Below are instructions that will aid a user with installing Mapguide Open Source v1.1 on Ubuntu 7.04 (Feisty Fawn) Server. The assistance of | Jo Cook was greatly appreciated. I tried installing it on the desktop version of Ubuntu however I was unsuccessful.

BASIC SETUP

Install a basic Ubuntu Server 7.04 (Feisty Fawn) (the rest of this guide assumes that you are not running as the root user)

The default directory will be /home/administrator. If this is not the case, change your path to /home/administrator

Install the following in Terminal:

sudo apt-get install subversion gcc g++ bison flex automake1.9 libjpeg62-dev libtool zlib1g zlib1g-dev libxml2-dev make libxalan110 libxalan110-dev

FDO INSTALL

In terminal type the following:

wget http://svn.osgeo.org/fdocore/branches/3.2.x/checkoutsvn.sh

Using 'nano', edit checkoutsvn.sh with the following:

nano checkoutsvn.sh

FDO_SVN_USERNAME=guest

FDO_SVN_PASSWORD=guest

FDO_SVN_SOURCEDIR=branches/3.2.x

Save your edits and exit checkoutsvn.sh

In terminal type the following:

''mkdir fdosvn

''cd fdosvn

bash /home/administrator/checkoutsvn.sh

Permanently accept the certificate and cancel checkouts with ctrl c

In terminal type the following:

cd /home/administrator/.subversion/config

nano config

Edit config with the following:

(in the Miscellany section)

Use-commit-times=yes

Enable-auto-props=yes

(in the Auto-Props section)

*.*=svn:eol-style=native

*.sh=svn:executable

Save and close the config file.

In Terminal (from /home/administrator):

''Rm -rf fdosvn/*

''rm –rf fdosvn/.svn

''cd /home/administrator/fdosvn

bash /home/administrator/checkoutsvn.sh ''cd /usr/local

''sudo mkdir fdo-3.2.0

''sudo mkdir fdo-3.2.2

''sudo chown administrator fdo-3.2.0

sudo chown administrator fdo-3.2.2

''cd /home/administrator/fdosvn

source ./setenvironment.sh

To avoid the bad fd number errors completely, type the following in the terminal:

sudo dpkg-reconfigure dash

and choose No at the prompt

In terminal, type the following:

''nohup ./build_thirdparty.sh

nohup ./build_linux.sh

APACHE / PHP INSTALL

In Terminal type the following:

cd .. (you should now be in /home/administrator)

''mkdir mgdev

''cd mgdev

svn co http://svn.osgeo.org/mapguide/branches/1.2.x

In Terminal, install the following:

sudo apt-get install libcurl3 libcurl3-dev libxslt1.1 libxslt1-dev expat

In Terminal:

''mkdir /usr/local/mapguideopensource

sudo chown administrator /usr/local/mapguideopensource (replace administrator with your user if necessary)

Edit the following file /etc/apt/sources.list to include the multiverse

nano sources.list

In Terminal, install the following:

sudo apt-get install sun-java5-jdk (accept the license)

In Terminal type the following:

(be sure to change the version of java to the one you download (i.e., 1.5.0.11, 1.5.0.12, etc.))

''export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.11

''cd /home/administrator/MgDev/1.2.x/MgDev/Oem/LinuxApt

''find. –name “*.gz” –exec tar zxf {} “;”

./build_apt.sh

BUILD OEM

In Terminal, install the following:

sudo apt-get install automake1.7 libasound2-Dev

In Terminal:

''cd /home/administrator/MgDev/1.2.x/MgDev

''pushd Oem/CppUnit-1.9.14

''rm aclocal.m4

''popd

./build_oem.sh

BUILD MAPGUIDE

In Terminal, install the following:

sudo apt-get install libexpat1 libexpat1-dev doxygen

In Terminal:

''sudo chown administrator /usr/lib/python2.4

''sudo chown administrator /usr/lib/python2.5

''aclocal

''libtoolize --force

''automake --add-missing --copy

''autoconf

''./configure - -without-python

''make

make install

To activate webstudio, you have to copy the files to the webserverextension folder as follows:

cp -R /home/administrator/mgdev/1.2.x/MgDev/Web/src/webstudio “SPACE” /usr/local/mapguideopensource/webserverextensions/www/webstudio

The above command should be all one line, with a 'space' between webstudio and /usr

Reboot the server

To start Mapguide on the server:

''cd /usr/local/mapguideopensource/webtierextensions/apache2/bin

''./httpd

''cd /usr/local/mapguideopensource/server/bin

./mgserver.sh''

Enjoy!