-
Notifications
You must be signed in to change notification settings - Fork 17
Building from source
The tools and libraries in this repository are all written in Eiffel 19.x. The Eiffel compiler / IDE (GPL) can be found here for all major platforms.
Git is needed by ADL Workbench. On Linux and Mac it will usually be there, or easy to obtain via a typical apt-get or similar command. Look online for how to do this for your platform.
For Windows, use git for windows.
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:
mkdir openEHR # if it doesn't exist
cd openEHR
git clone https://github.com/openEHR/adl-tools.git
git clone https://github.com/openEHR/adl-archetypes.git
git clone https://github.com/openEHR/specifications-ITS-BMM.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):
cd ..
mkdir Eiffel
git clone https://github.com/wolandscat/EOMF.git
Then clone the iso8601 and error_message libraries into a sub-directory EiffelHub:
mkdir EiffelHub
cd EiffelHub
git clone https://github.com/eiffelhub/iso8601
git clone https://github.com/eiffelhub/error_message
You should end up with:
openEHR/
adl-tools/ # Git repo
adl-archetypes/ # Git repo
specifications-ITS-BMM/ # Git repo
terminology/ # Git repo
Eiffel/
EOMF/ # Git repo
EiffelHub/
iso8601/ # Git repo
error_message/ # Git repo
Now define system environment variables:
EOMF = ~/Eiffel/EOMF # wherever you put EOMF
EIFFEL_HUB = ~/Eiffel/EiffelHub # wherever you put EiffelHub
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.
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 or other languages.
- Start EiffelStudio
- Open the project .ecf file .../openEHR/adl-tools/apps/adl_workbench/app/adl_workbench.ecf
- Project > Compile (F7)
- Execution > Run (F5)
The above is a 'workbench' build, used for development and 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.
To configure the ADL Workbench and use it, see the online manual.