Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

4.2. Building with ...

4.2.1. ... shell scripts

  • Go to $OPENMI_DIR/Oatc/src/csharp/Linux/
    Edit the package files *.pc:
  • drawing.pc: replace the path for System.Drawing.dll
  • nunit-framework.pc: replace the path for nunit.framework.dll
  • windows-forms.pc: replace the path for System.Windows.Forms.dll
  • Run build.Standard.sh
  • Run build.Sdk.sh and the Sdk including UnitTest will be built.
  • Run build.Gui.sh and the Gui including UnitTest will be built.
  • Run build.Examples.ModelComponents.SpatialModels.sh will generate test models.
    All dlls and exe files will be copied to $OPENMI_DIR/Oatc/src/csharp/bin/.

4.2.2. ... with MonoDevelop

The IDE MonoDevelop is an alternative to the scripts. It imports Microsoft projects by loading the *.sln file. The author had some compilation problems with MonoDevelop 2.0 Alpha without clear error messages. Experienced developers may find a solution. Furthermore, MonoDevelop will be constantly improved in 2009, s. http://www.mono-project.com/Roadmap

4.3. Environment variables

It is recommended to extend two environment variable with the bin directory:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OPENMI_DIR/Oatc/src/csharp/bin/
export MONO_PATH=$MONO_PATH:$OPENMI_DIR/Oatc/src/csharp/bin/

4.4. Running the applications

Mono applications do not run directly on the Linux system, they are interpreted in a runtime engine, comparable to the virtual machine in java. Thus, the command in the terminal window command line has to start with mono:
mono Oatc.OpenMI.Gui.ConfigurationEditor.exe
mono Oatc.OpenMI.Gui.ConfigurationEditor.exe

4.

...

5. UnitTests

  • Go to $OPENMI_DIR/Oatc/src/csharp/Linux/
  • runNunit.Sdk.sh for all Sdk dlls
  • runNunit.Gui.sh for Oatc.OpenMI.Gui.Core.dll
  • runNunit.Examples.ModelComponents.SpatialModels.sh e.g. for a RiverModel and a GroundWaterModel

...

5. Miscellaneous

5.1. Running on non-SUSE Linux?

The generated applications will probably run on further platforms, especially non-SUSE Linux derivates, without re-compilation. But it has not been proved yet. Interested persons are invited to try. A short notice to the community, e.g. to the OpenMI Forum on SourceForge would be great.

5.2. Can I use the same sources for Linux and Windows?

Yes, you can generate a set of dlls and exe files for Linux and a set for Windows with the same sources. The method Gui/Core/Utils.IsRunningOnMono decides during runtime, whether it runs on Mono or not. The build.*.sh scripts are tailored for Linux, for Windows you can use the Visual Studio projects.

4.6. Buildung the OpenMI with MonoDevelop

The IDE MonoDevelop is an alternative to the scripts, s. 4.2. It import Microsoft projects by loading the *.sln file. The author had some compilation problems with MonoDevelop 2.0 Alpha without clear error messages. Experienced developers may find a solution. Furthermore, MonoDevelop will be constantly improved in 2009, s. http://www.mono-project.com/Roadmap

5. Miscellaneous

5.1. Running on non-SUSE Linux?

The generated applications will probably run on further platforms, especially non-SUSE Linux derivates, without re-compilation. But it has not been proved yet. Interested persons are invited to try. A short notice to the community, e.g. to the OpenMI Forum on SourceForge would be great.

...

5.3. Todo list

  • portation of the OpenMI Tools
  • portation of the SimpleRiver example
  • ConfigurationEditor: Help page
  • ConfigurationEditor ConnectionProperties -Dialoguedialogue: Buttons "Use Element Type Filter" and "Use Dimension Filter" do not work .-> there are no filters
  • ConfigurationEditor: RegisterFileExtensions can not work on Linux.

...