Commit a7387b78 authored by Maxime Perrotin's avatar Maxime Perrotin

Updated README files

parent 65e0a869
......@@ -11,15 +11,49 @@ Developer documentation is provided in docstrings in the Python modules.
License is LGPL (see file LICENSE)
You need Pyside and ANTLR 3.1.3 runtimes to be able to use this Python module
On Debian, Ubuntu:
$ apt-get install python-pyside pip
$ pip install antlr_python_runtime
You need to install the following dependencies before you can run Opengeode:
Also tested on Windows and FreeBSD - use pip to install antlr-python-runtime.
Install Pyside from the Windows binary or from FreeBSD ports.
- Python 2.7
installed on all Linux distributions ; on Windows you need to install it manually
- PySide
on debian-based Linux run:
$ sudo apt-get install python-pyside
on windows and mac, download and run the automatic installer from Qt
- pip for Python2
on debian-based Linux run:
$ sudo apt-get install python-pip
on windows and mac, download and use the automatic installer
- enum34, singledispatch, graphviz, antlr runtime
graphviz core needs to be installed from the Linux repos first:
$ sudo apt-get install graphviz
Then using pip, install the python libraries:
$ sudo pip install --upgrade graphviz enum34 singledispatch
$ sudo pip install antlr_python_runtime --allow-external antlr_python_runtime --allow-unverified antlr_python_runtime
* Note: graphviz for python cannot be installed on Windows
- ASN1SCC - the ASN.1 compiler
Download here:
It is a .NET application, it can be installed on Windows and Linux (you need mono)
Make sure asn1.exe is in the path
On linux :
$ cd /opt
$ sudo wget
$ sudo tar zxvf asn1Comp.tar.gz
$ sudo apt-get install mono-runtime libmono-system-runtime4.0-cil
Check that it works:
$ asn1Comp/bin/asn1.exe
Then add to your PATH the bin directory in e.g. your .bashrc file
$ echo 'export PATH=$PATH:/opt/asn1Comp/bin' >> ~/.bashrc
- gnat - if you want to build the code you generate in Ada
$ sudo apt-get install gnat
On Windows, you also need to install Python 2.7 manually.
To make a static binary on Linux with pyinstaller 2.0:
python ../../ --onefile
......@@ -23,8 +23,8 @@ Features
- Graphical editor of SDL processes and procedures.
- SDL2010 features: FOR loops in task symbols, hierarchical states
- Works on pure PR+CIF files (textual SDL notation) - no fancy proprietary save format
- Supports ASN.1 data types, including the Value notation - check this page to know more about our ASN.1 compiler and tools
- Generates Ada code with ASN.1 types using TASTE ASN.1 "space-certified" (SPARK) compiler
- Full supports ASN.1 data types - using ESA Space Certified compiler (
- Generates Ada code
- Extensive syntax and semantic checks
- Automatic conversion to Statechart diagrams
- Save the complete or parts of the model to PNG/SVG/PDF files
......@@ -34,6 +34,7 @@ Features
- Syntax highlighting
- Undo/Redo, Copy-Paste
- (Limited) VIM mode - You can use :wq or :%s,search,replace,g, and /search pattern
- (In progress) SDL to LLVM code generation
......@@ -41,46 +42,45 @@ Installation
There are three major dependencies for OpenGEODE:
There are several dependencies for OpenGEODE:
Apart from pygraphviz, all of them exist for Linux, Windows, FreeBSD, and most likely Mac OSX
- Python 2.7 with pip
- Pyside (the Qt bindings for Python)
- Python ANTLR Runtime
- PyGraphviz (Linux only - not available on Windows)
- enum34, singledispatch
- (optional) GNAT to build the generated Ada code
- mono
If you use pip to install OpenGEODE, these dependencies should be installed
automatically. However, note that installing PySide from pip requires some
work and is not straightforward.
If you are using a Linux Debian-based distribution (including Ubuntu),
I would recommended to install PySide using your package manager:
You should also install pygraphviz using the same method, for convenience.
On Debian, Ubuntu, and probably other distributions:
$ sudo apt-get install python-pyside pyside-tools python-pygraphviz pip
$ sudo apt-get install python-pyside pyside-tools graphviz pip gnat mono-runtime libmono-system-runtime4.0-cil
$ sudo pip install --upgrade graphviz enum34 singledispatch
$ sudo pip install antlr_python_runtime --allow-external antlr_python_runtime --allow-unverified antlr_python_runtime
The Python 2.7 ANTLR 3.1.3 runtime is not part of Debian packages. Install
it with pip (or download and install manually the package):
To install the ASN.1 compiler:
$ pip install antlr_python_runtime singledispatch
$ cd /opt
$ sudo wget
$ sudo tar zxvf asn1Comp.tar.gz
$ echo 'export PATH=$PATH:/opt/asn1Comp/bin' >> ~/.bashrc
On Windows:
You need to download and install Python, Pyside, and pip (binaries are
available on respective websites)
Check that it works:
On FreeBSD:
PySide is available through the ports.
You can also use easy_install to install it.
Use pip to install the ANTLR runtime (see above)
$ asn1.exe
Automatic installation (recommended)
OpenGEODE installation
To install the application on your machine:
To install the application on your machine, once all dependencies are met:
$ pip install --upgrade opengeode
......@@ -88,30 +88,13 @@ $ pip install --upgrade opengeode
This is sufficient to get opengeode running
In addition OpenGEODE is capable of generating code for embedded, real-
time systems in the Ada programming language, with compact and efficient
data manipulation and binary encoding using the ASN.1 notation.
To get the full benefits of SDL and OpenGEODE, consider installing
TASTE, that is a complete development environment dedicated to
real-time, embedded systems from the European Space Agency.
TASTE also allows the transparent integration and communication between
models developed by commercial tools such as Matlab-Simulink and
Real-Time Developer Studio.
Installation from source
You can get the source from the TASTE repositories or from GitHub
$ svn co opengeode
$ git clone opengeode
$ git clone
Then enter the opengeode directory and as root, type:
......@@ -120,6 +103,8 @@ Then enter the opengeode directory and as root, type:
$ make install
Installation is optional. You can simply run to get it work.
Information and contact
......@@ -127,9 +112,16 @@ OpenGEODE is part of the TASTE project.
Find more information and download at
OpenGEODE is developed and maintained by Maxime Perrotin
TASTE allows to create embedded software systems that combine SDL models with C, Ada,
Matlab-Simulink and a few other languages or tools.
OpenGEODE is mainly designed, developed and maintained by Maxime Perrotin
maxime (dot) perrotin (at) esa (dot) int
The LLVM backend was designed and implemented by Diego Barbera during the ESA Summer of Code 2014
Some parts have been implemented by Laurent Meyer (native SDL type support in the parser)
The background pattern was downloaded from
The ASN.1 compiler (ASN1Scc) that OpenGEODE is based on was
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment