wiki:CompilingMapGuide22/LinuxBuildProcess

Version 2 (modified by hluo, 14 years ago) ( diff )

--

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.

Note: See TracWiki for help on using the wiki.