Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 2e9c43658e374d290a2de15d25134ac8 > files > 805

db4o-doc-8.0-1.fc15.i686.rpm

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns:MadCap="http://www.madcapsoftware.com/Schemas/MadCap.xsd" MadCap:lastBlockDepth="2" MadCap:lastHeight="120" MadCap:lastWidth="624" MadCap:disableMasterStylesheet="true" MadCap:tocPath="Platform Specific Issues" MadCap:InPreviewMode="false" MadCap:RuntimeFileType="Topic" MadCap:TargetType="WebHelp" MadCap:PathToHelpSystem="../../" MadCap:HelpSystemFileName="index.xml" MadCap:SearchType="Stem">
    <head><title>db4o On Mono</title>
        <script type="text/javascript">/* <![CDATA[ */
window.onload = function(){
	var pathToFlash = $('html').attr('MadCap:PathToHelpSystem') + 'Content/Resources/Code/ZeroClipboard.swf';
	ZeroClipboard.setMoviePath(pathToFlash);
			
	function bindToClipBord(element,content){
		var clip = new ZeroClipboard.Client();
		clip.setText(content);
		clip.glue(element);
	};
		
	if(location.protocol==='file:'){
		$('.copylink-marker').remove();
	} else{
			$('.copylink-marker').each(function(){
				var text = $(this).parent().parent().children('.prettyprint').html();
				$(this).hover(function(){
					bindToClipBord(this,text);
				},
				function(){});
			});	
	}		
	prettyPrint();	
};
                /* ]]> */</script>
        <link href="../SkinSupport/MadCap.css" rel="stylesheet" />
        <link href="../Resources/TableStyles/Basic.css" rel="stylesheet" />
        <link href="../Resources/Stylesheets/OnlineStyle.css" rel="stylesheet" />
        <script src="../SkinSupport/MadCapAll.js">
        </script>
        <script src="../Resources/Code/prettify.js">
        </script>
        <script src="../Resources/Code/lang-vb.js">
        </script>
        <script src="../Resources/Code/jquery.min.js">
        </script>
        <script src="../Resources/Code/ZeroClipboard.js">
        </script>
    </head>
    <body>
        <p class="MCWebHelpFramesetLink" style="display: none;"><a href="../../index_CSH.html#platform_specific_issues/db4o_on_mono.htm" style="">Open topic with navigation</a>
        </p>
        <div class="MCBreadcrumbsBox"><span class="MCBreadcrumbsPrefix">You are here: </span><a class="MCBreadcrumbsLink" href="../platform_specific_issues.htm">Platform Specific Issues</a><span class="MCBreadcrumbsDivider"> &gt; </span><span class="MCBreadcrumbs">db4o On Mono</span>
        </div>
        <p>
            <script type="text/javascript">/*<![CDATA[*/document.write('<a href="' + location.href +'">');
				document.write("Direct Link");
			document.write('</a>');/*]]>*/</script>
        </p>
        <p>
        </p>
        <h1><a name="kanchor111"></a>db4o On Mono</h1>
        <p>Currently db4o is only build for .NET and tested on .NET. However it's possible to use db4o on Mono. Some features are not supported on Mono: The <a href="wcf_data_services.htm">data services</a> and the <a href="../tuning/runtime_statistics.htm">monitoring-support</a>.</p>
        <p>In the regular build, db4o also uses some API's which are not available on Mono. To avoid that, you need to build db4o from source and define the build constant 'Mono'. The source is in the 'src'-folder of the db4o distribution. </p>
        <h2>Build For Mono With Regular .NET</h2>
        <p>The easiest way to build db4o for Mono is actually to use the regular MSBuild and just define the 'Mono' built-time constant. Open the Windows console and navigate to the db4o source folder. Then you can run the MSBuild command:</p>
        <pre class="monospace">MSBuild /property:Configuration=Release /property:DefineConstants="Mono" /target:Rebuild Db4o-2008.sln</pre>
        <p>The MSBuild-tool is in the C:\Windows\Microsoft.NET\Framework\{version}\-folder, where the {version} represents the .NET version. For example 'v3.5' for .NET 3.5.</p>
        <p>The different solution-files (*.sln) represent different versions of db4o. For example:</p>
        <table style="width: 100%;mc-table-style: url('../Resources/TableStyles/Basic.css');" class="TableStyle_Basic" cellspacing="0">
            <col style="width: 50%;" />
            <col style="width: 50%;" />
            <tbody>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Solution-File</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o Version</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-2005.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for .NET 2.0 / Mono equivalent</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-2008.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for .NET 3.5 / Mono equivalent</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-2010.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for .NET 4.0 / Mono equivalent </td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-<span class="MCTextPopup"><a href="javascript:void(0);" class="MCTextPopupSpot" onclick="FMCTextPopup( event, this ); return false;">CF<img style="border: none;margin-left: 5px;" src="../SkinSupport/ExpandingClosed.gif" MadCap:altsrc="../SkinSupport/ExpandingOpen.gif" class="MCExpandingIcon" onload="if ( typeof( FMCPreloadImage ) == 'function' ) { FMCPreloadImage( '../SkinSupport/ExpandingOpen.gif' ); }" /></a><span class="MCTextPopupBody" style="display: none; ">.NET Compact Framework</span></span>-2005.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for .NET 2.0 Compact Framework</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-CF-2008.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for .NET 3.5 Compact Framework</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColSep">Db4o-Silverlight-2008.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowSep_ColEnd">db4o for Silverlight 3.0 / Moonlight 3.0</td>
                </tr>
                <tr>
                    <td class="TableStyle_Basic_Body_0_0_RowEnd_ColSep">Db4o-Silverlight-2010.sln</td>
                    <td class="TableStyle_Basic_Body_0_0_RowEnd_ColEnd">db4o for Silverlight 3.0 / Moonlight 3.0</td>
                </tr>
            </tbody>
        </table>
        <p>Note that you should use the MSBuild-tool for the right version. Use the MSBuild  3.5 version to build the Db4o-2008.sln Solution.</p>
        <p>The result of the builds are in the bin/Release-folders of the different subprojects.</p>
        <h2>Build With Mono</h2>
        <p>In Mono you can use the xbuild-command instead of the MSBuild. The xbuild is part of the mono distribution. If you're using a Mono version which was packaged with your Linux-distribution, you maybe need to install is separately.</p>
        <p>In principal the command is exactly the same as with MSBuild and the same rules apply. The different solution-files represent the different db4o versions. See on the table above.</p>
        <pre xml:space="preserve">xbuild /property:Configuration=Release /property:DefineConstants="Mono" /target:Rebuild Db4o-2008.sln</pre>
        <p>When you build with Mono and xbuild, you probably get some errors.This errors should be only in following projects. </p>
        <ul>
            <li value="1">Db4o-Data-Services: This is not available in Mono</li>
            <li value="2">Db4o-Test-Projects: The db4o Test-Suite is not ported to Mono. For example it doesn't exclude TestCases which only apply on Windows.</li>
        </ul>
        <p>The rest of db4o can be built on Mono. The result of the builds are in the bin/Release-folders of the different subproject's.</p>
        <p style="font-weight: bold;">&#160;</p>
        <p>&#160;</p>
        <script type="text/javascript" src="../SkinSupport/MadCapBodyEnd.js">
        </script>
    </body>
</html>