Skip to content
Thomas Beale edited this page Jul 27, 2014 · 37 revisions

ADL tools project logo The ADL tools project contains the core libraries for the ADL 1.5 compiler, and a number of tools based on it, including the ADL Workbench, a .Net DLL form of the compiler, and various stand-alone non-UI libraries and test applications.

Most users will simply want to download binaries. You can do that most easily by referring to the [ADL Workbench home page] (http://www.openehr.org/downloads/ADLworkbench/home).

Building from source

The tools and libraries in this repository are all written in Eiffel 7. The Eiffel compiler / IDE (GPL) can be found here.

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

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/iso8601/library:

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

You should end up with:

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

Now define the system environment variable: EOMF (i.e. %EOMF% in Windows-speak, $EOMF in linux/unix-speak) to point to the directory .../openEHR/EOMF, and EIFFEL_HUB to point to .../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.

Building Distribution Packages

This part is OS-specific, and enables you to build a full installer package for whichever OS you are working on.

  1. [Windows] (wiki/Package-Building-on-Windows)
  2. [Linux] (wiki/Building-on-Linux)
  3. [Mac OSX] (wiki/Building-on-Mac-OSX)

Clone this wiki locally