Build Instructions
The oss.linn.co.uk source code can be built on Linux, OSX and Windows operating systems using the SCons build system. The build system uses the Mono .Net Framework on all platforms to compile C# files. Windows users can build the source code with SCons or with Visual Studio 2008, solution and project files are provided in the SVN repository for this purpose. KinskyPDA can be built for the Pocket PC on Windows using Visual Studio 2008 or with Scons after the .Net Compact Framework has been installed.
Please report any defects in the build process by raising a new ticket
Build environment setup on Windows
SVN ( download)
Install SlikSVN using the latest stable Windows installer. This installs the SVN client tools needed to access the oss.linn.co.uk repository. The SlikSVN tools do not require the apache modules required for administering a SVN source repository. Test that SVN is installed correctly by opening a new command prompt and entering command:
svn --version
Mono SDK ( download)
Install the Mono Framework using the latest stable Windows installer. Add the Mono bin directory to your PATH environment variable. Test that Mono is installed correctly by opening a new command prompt and entering command:
gmcs --version
Python ( download)
Install Python v2.7.3 Windows 32 bit - SCons doesn't yet support later versions or 64bit. Add the Python install directory to your PATH environment variable (If you had an older version of python installed, make sure you remove it from your PATH variable). Test that Python is installed correctly by opening a new command prompt and entering command:
python --version
SCons ( download)
Install SCons using the latest stable Windows installer. SCons scripts are installed to your Python Scripts directory. Add this directory to your PATH environment variable. Test that SCons is installed correctly by opening a new command prompt and entering command:
scons --version
NSIS ( download)
Install NSIS using the latest stable Windows installer. Add this directory to your PATH environment variable. Test that NSIS is installed correctly by opening a new command prompt and entering command:
nsis
NSIS Simple Firewall Plugin ( download)
Unzip and copy the SimpleFC.dll plugin dll to the installed NSIS plugin directory.
NSIS Internet Client Plugin ( download)
Unzip and copy the inetc.dll plugin dll to the installed NSIS plugin directory.
zip ( download)
Install the complete package (minus sources). Add this directory to your PATH environment variable. Test that zip is installed correctly by opening a new command prompt and entering command:
zip
bsdtar ( http://downloads.sourceforge.net/gnuwin32/libarchive-2.4.12-1-setup.exe)
Install the complete package (minus sources). Add this directory to your PATH environment variable (it will already be there if you installed it to the default location as this is the same as zip above). Test that bsdtar is installed correctly by opening a new command prompt and entering command:
bsdtar
xsltproc ( ftp://ftp.zlatkovic.com/libxml/)
Download the latest versions of the following packages: libxml2, iconv, libxslt, zlib. Extract each of the packages and add the contents of each bin folder to a single directory on your hard drive. Add this directory to your PATH environment variable. Test that xsltproc is installed correctly by opening a new command prompt and entering command:
xsltproc
Doxygen ( http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc)
Download and install the latest version of doxygen for windows. Ensure this directory has been added to your PATH environment variable (the current version of the installer should do this for you). Test that doxygen is installed correctly by opening a new command prompt and entering command:
doxygen
msbuild (part of the .NET framework - download)
Install .NET framework 4.0.xxxxx. Add the following directory to your PATH environment variable: C:\Windows\Microsoft.NET\Framework\v4.0.xxxxx Test that msbuild is installed correctly by opening a new command prompt and entering command:
msbuild /help
Building on Windows for the Pocket PC
The Compact Framework libraries can be installed with Visual Studio Professional. If you are not building with Visual Studio the Compact Framework can be installed as part of the Windows SDK for Windows Server 2008 ( download). A complete description of what is needed to build for the Compact Framework without Visual Studio installed can be found here
Setup Environment Variables
Create the environment variable CF_Library and set its value to point to the installed Compact Framework libraries. These libraries by default are installed at \Microsoft.NET\SDK\CompactFramework\v3.5\WindowsCE.
Building with Visual Studio
There is a bug in the Visual Studio build process that results in building becoming progressively slower for each build. The bug exists in the Platform Verification Task that is a post-build validation step run as a target of the MSBuild process. An explanation and fix for this bug can be found at this ( blog)
Build environment setup on a Mac
1. Install MacPorts
MacPorts is a package manager that offers various Linux packages for installation on OSX. After installation test by opening a new command prompt and entering command:
port help
2. Install the required packages using the port command
sudo port install nsis sudo port install mono sudo port install scons (xsltproc - not a mac port?) sudo port install doxygen
3. NSIS Simple Firewall Plugin ( download)
Unzip and copy the SimpleFC.dll plugin dll to the installed NSIS plugin directory.
4. NSIS Internet Client Plugin ( download)
Unzip and copy the inetc.dll plugin dll to the installed NSIS plugin directory.
If you want to build Kinsky for iOS you will also needl:
5. Install XCode 4
6. Install MonoTouch 6
Build environment setup on Debian Linux
1. Install required packages using the Debian APT tool
sudo apt-get install mono-gmcs sudo apt-get install mono-2.0-devel sudo apt-get install libmono-winforms2.0-cil sudo apt-get install openjdk-6-jre-headless needed for java runtime sudo apt-get install openjdk-6-jdk sudo apt-get install subversion sudo apt-get install scons sudo apt-get install nsis sudo apt-get install xsltproc sudo apt-get install doxygen
2. NSIS Simple Firewall Plugin ( download)
Unzip and copy the SimpleFC.dll plugin dll to the NSIS plugin directory.
3. NSIS Internet Client Plugin ( download)
Unzip and copy the inetc.dll plugin dll to the installed NSIS plugin directory.
Checking out the latest source with SVN
Checkout the latest version of the code with the following SVN command:
svn checkout http://oss.linn.co.uk/repos/Public
This will create a new folder Public in your present working directory with the source code checked out.
Building with SCons using Python build scripts
Python build scripts have been created that build various libraries and executables using SCons.
To build the Upnp libraries enter the command:
python buildLibUpnpCil.py variant=release codesign=false
To build Kinsky for Windows including installers without code signing
python buildKinskyDesktopWpf.py variant=release codesign=false
To build Kinsky for Mac including installers
python buildKinskyDesktopCocoa.py variant=release codesign=false
To build Kinsky for Linux including installers without code signing
python buildKinskyDesktopWinForms.py hardware=Linux variant=release codesign=false
To build Kinsky for PDA including installers without code signing
python buildKinskyPDA.py variant=release codesign=false
To build Kinsky for iOS including installers without code signing
python buildKinskyTouch.py variant=release codesign=false