...
- cmake ( install cmake (sudo apt-get install cmake))
- g++ ( install g++ (sudo apt-get install g++) )
- Python 2.7 ( or Python 3.0 not tested )
If you intend to use ecFlow Python API, You will need to install Python. (install python-dev (sudo apt-get install python-dev))
Please ensure that python is accessible on $PATH otherwise, you may need to customise $BOOST_ROOT/tools/build/v2/site-config.jam .
If you do not need the python api, then you can build without it, see below.The python installation should include the development packages
Xlib, X11, XMotif for ecflowview .
Do not use Lesstif library to compile ecflowview as a replacement for Motif.
OpenMotif can be downloaded from http://www.ist.co.uk/downloads/motif_download.html
If you do not want use the GUI, then you can configure the build to ignore this dependency.- Qt for ecFlowUI (Qt5 preferred).
For self-installed Qt libraries, consider setting CMAKE_PREFIX_PATH (see below). See also http://doc.qt.io/qt-5/cmake-manual.html for further details.
...
ecfFlow consists of two tar files i.e. :
boost_1_53_0.tar.gz
- ecFlow-4.1.0-Source.tar.gz
Create a directory for the build:
Code Block language bash mkdir /tmp/ecflow_build
Copy the the two tar file into this directory, then change directory to /tmp/ecflow_build
Un-zip then un-tar the two file files:
Code Block language bash tar -zxf boost_1_53_0.tar.gz tar -zxf ecFlow-4.1.0-Source.tar.gz
You should have two directories created:
Code Block boost_1_53_0 ecFlow-4.1.0-Source
Create two environment variables. These are used by some of scripts:
Code Block language bash export WK=/tmp/ecflow_build/ecFlow-4.1.0-Source export BOOST_ROOT=/tmp/ecflow_build/boost_1_53_0
...
- Boost uses bjam for building the boost libs.bjam source is available in boost, hence we first need to build bjam itself:
Code Block language bash cd $BOOST_ROOT ./bootstrap.sh
- Ecflow uses some of compiled libraries in boost. The following script will build the required lib’s, in both debug and release forms and will configure boost build according to your platform.
- If you do not require the ecflow python api, you can avoid build boost python libs by setting.export ECF_NO_PYTHON=1before calling $WK/build_scripts/boost_build.sh
Code Block language bash cd $BOOST_ROOT $WK/build_scripts/boost_1_53_fix.sh # fix for boost, only for some platforms $WK/build_scripts/boost_build.sh # compile boost libs used by ecFlow
...