Complete Linux Build Process for MapGuide 2.2
Build Procedure for CentOS 5.4
Setup CentOS 5 build VM as per Build Instruction on CentOS 5.4
For King Oracle provider, download 11.2 instant client from Oracle at http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html and ensure that the Oracle shared libraries are added to the library path.
Build FDO
svn co http://svn.osgeo.org/fdo/branches/3.5 fdo35 cd fdo35/install ./buildall.sh
This will build/install FDO and create a CentOS 5 binary tarball named fdosdk-centos5-3.5.0.FDOVERSION.tgz where FDOVERSION is the last svn change number for fdo/branches/3.5.
Build MapGuide
svn export http://svn.osgeo.org/mapguide/trunk/Installer/scripts scripts cd scripts ./build.sh
This will build/install MapGuide and create a binary tarball mapguideopensource-2.2.0.MGVERSION.tgz under scripts/bin where MGVERSION is the last svn change number for mapguide/trunk.
Packaging for Ubuntu 9.10
Install the packaging tools and Subversion
apt-get install openssh-server openssh-client gcc apt-get install build-essential fakeroot dpkg-dev lintian apt-get install subversion
Install packages to resolve link dependencies. This allows dpkg to write out package dependencies
apt-get install libexpat1 libssl0.9.8 odbcinst1debian1 unixodbc libcurl3 apt-get install mono-runtime libmono-winforms2.0-cil apt-get install libmysqlclient15off
Do some symlinking to get around CentOS 5.4 and Ubuntu 9.10 differences
ln -s /lib/libcrypto.so.0.9.8 /lib/libcrypto.so.6 ln -s /lib/libssl.so.0.9.8 /lib/libssl.so.6 ln -s /lib/libexpat.so.1.5.2 /lib/libexpat.so.0 ln -s /usr/lib/libldap-2.4.so.2 /usr/lib/libldap-2.3.so.0 ln -s /usr/lib/liblber-2.4.so.2 /usr/lib/liblber-2.3.so.0
For King Oracle provider, download 11.2 instant client from Oracle at http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html and ensure that the Oracle shared libraries are added to the library path.
Copy and extract the FDO and MapGuide binary tarballs created above to Ubuntu.
Build Ubuntu Packages for FDO
svn export http://svn.osgeo.org/fdo/branches/3.5/install install35 cd install35 ./dpkgall.sh i386 FDOVERSION
Where FDOVERSION is the version from the FDO tarball. This will create a set of .deb packages in install35/bin. For each debian package, run dpkg --info to ensure that the "Depends:" lines are present. Then run "dpkg --install" for each package. This ensures that the MapGuide packaging picks up the FDO package dependency.
Build Ubuntu Packages for MapGuide
svn export http://svn.osgeo.org/mapguide/trunk/Installer/scripts scripts cd scripts ./dpkgmapguide.sh i386 MGVERSION
Where MGVERSION is the version from the MapGuide tarball. This will create a set of packages in scripts/bin. For each package, run dpkg --info to ensure that "Depends:" lines are present.
Finally, post the entire set of .deb packages and update mginstallubuntu.sh to point at the new binaries.