Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • cmake (   install cmake   (sudo apt-get install cmake))
  • g++     (   install g++        (sudo apt-get install g++)          )
  • Python 2.7  or Python 3

    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 . 

    The python installation should include the development packages

    If you do not need the python api, then you can build without it, see below.
  • 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.

...

  • Boost uses bjam for building the boost libs.
    bjam source is available in boost, hence we first need to build bjam itself:

     

    Code Block
    languagebash
    cd $BOOST_ROOT
    ./bootstrap.sh
  • For python3

    Code Block
    ./bootstrap.sh --with-python=/path/to/python3
    
    You may need to update $BOOST_ROOT/project-config.jam, with path to executable and path to include files. Note: remember to preserve the spaces, as they are significant. i.e.
    Code Block
    # using python
    #     :  # version
    #     :  # cmd-or-prefix
    #     :  # includes
    #     :  # libraries
    #     :  # condition
    #     ;
    using python : 3.5 : python3 : /usr/local/apps/python3/3.5.1-01/include/python3.5m ;
  • 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 building boost python libs by setting.   
Code Block
languagebash
titleDisable boost python, *IF* ecflow python API not required
 export ECF_NO_PYTHON=1

...

before calling $WK/build_scripts/boost_build.sh
You will also need to disable python when building ecflow.  See the instruction under cmake
 

 

Code Block
languagebash
titleBuild the boost libraries used by ecflow
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

 

Build

There are two build systems available for ecflow:

...