Skip to content
Thomas Beale edited this page Jul 2, 2013 · 37 revisions

ADL tools project logo

Welcome

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.

Windows

Windows source build is pretty painless, as follows:

Install EiffelStudio Windows version.

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

Lastly, if you are going to build installers for a platform(s) and upload them to the openEHR@Github, then you need to clone the downloads repo: git clone https://github.com/openEHR/downloads.git

You should end up with: ''' openEHR/ adl-tools/ adl-archetypes/ reference-models/ EOMF/ downloads/ '''

Define the system environment variable EOMF (i.e. %EOMF% in Windows-speak, $EOMF in linux/unix-speak) to point to the directory .../openEHR/EOMF.

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 .exe, which you can run with Project > Run finalized system. This build is the same as you get by doing a distribution build.

Distribution build & package

Using this method, you can do a batch build of one or more apps, and also build the installer package. To do this, you need to install a few things:

  1. Python: There are various ways to do this; I install things like Python under cygwin, but you can just do a normal windows install as well.
  2. SCons builder (make replacement): SCons
  3. NSIS (Windows .msi installer builder): NSIS

Now, to build just the adl_workbench application...

  1. start a command shell window in the .../openEHR directory
  2. type ''' scons downloads/windows/adl_workbench '''

This assumes SCons, Python and NSIS are in your path. If not, you could use a script like the following in the .../openEHR directory: ''' set path=%path%;c:\cygwin\bin;c:\program files\nsis set PLATFORM=win32 scons ..\downloads\windows\adl_workbench '''

Linux

Mac OSX

For developers who want to build from source, instructions for installing Eiffel on Linux are here; Mac OS X [here] (http://dev.eiffel.com/EiffelOnMac).

Clone this wiki locally