Skip to content

Building from source

wolandscat edited this page Oct 28, 2014 · 9 revisions

The tools and libraries in this repository are all written in Eiffel 15.x. The Eiffel compiler / IDE (GPL) can be found here for all major platforms.

Git repo setup

You need to clone various Git repos to do any building. The instructions are the same for all platforms (obviously you can use GUI tools on each platform as well).

In your openEHR work directory, e.g. .../openEHR, clone the Git repos adl-tools (this repo), adl-archetypes and reference-models with:

$ git clone https://github.com/openEHR/adl-tools.git 
$ git clone https://github.com/openEHR/adl-archetypes.git
$ git clone https://github.com/openEHR/reference-models.git
$ git clone https://github.com/openEHR/terminology.git

Also clone the wolandscat/EOMF libraries, which contain BMM (Basic Meta-Model) and ODIN (like JSON but smarter):

$ git clone https://github.com/wolandscat/EOMF.git

Then clone the iso8601 library into a directory such as .../EiffelHub/:

$ git clone https://github.com/eiffelhub/iso8601

You should end up with:

openEHR/
    adl-tools/
    adl-archetypes/
    reference-models/
    terminology/
    EOMF/
EiffelHub/
    iso8601/

Now define system environment variables:

EOMF = .../openEHR/EOMF      # wherever you put EOMF/
EIFFEL_HUB = .../EiffelHub   # wherever you put EiffelHub/

Build from Source - all platforms

Below are instructions for how to set up the source development environment. This is essentially the same on all platforms.

Install EiffelStudio Windows / Linux / Mac OSX version as appropriate.

Building in the EiffelStudio IDE

Go on, you know you want to! This is for people who might want to look at the code, debug etc. Note that all the ADL/AOM validation and flattening algorithms are in the code, so this could be useful if you want to port code to Java, other languages.

  1. Start EiffelStudio
  2. Open the project .ecf file .../openEHR/adl-tools/apps/adl_workbench/app/adl_workbench.ecf
  3. Project > Compile (F7)
  4. Execution > Run (F5)

The above is a 'workbench' build for debugging. You can also build the 'finalised' version using Project > Finalize (ctrl+shift+F7). This generates a self-standing optimised binary, which you can run with Project > Run finalized system. This build is the same as you get by doing a distribution build.

Clone this wiki locally