Page History
HTML |
---|
<div class="section" id="install"> <span id="index-0"></span><span id="id1"></span> <ul> <li><p class="first">dependencies</p> <blockquote> <div><ul> <li><div class="first line-block"> <div class="line">python 2.7, Python 3.0 not tested.</div> <div class="line">If you intend to use ecFlow Python api, You will need to install python.</div> <div class="line">If python installed in non standard installation, you may need to</div> <div class="line">customise $BOOST_ROOT/tools/build/v2/site-config.jam</div> <div class="line">The python installation should include the development packages</div> </div> </li> <li><p class="first">Xlib, X11, XMotif for <a class="reference internal" href="/wiki/display/ECFLOW/Glossary#term-ecflowview"><em class="xref std std-term">ecflowview</em></a>. Do <em>not</em> use Lesstif library to compile ecflowview as a replacement for Motif. OpenMotif can be downloaded from <a class="reference external" href="http://www.ist.co.uk/downloads/motif_download.html">http://www.ist.co.uk/downloads/motif_download.html</a></p> </li> </ul> <p>ecfFlow </div></blockquote> </li> <li><p class="first">ecfFlow consists of two tar files i.e. :</p> <blockquote> <ul<div><ul class="simple"> <li><tt class="file docutils literal"><span class="pre">boost_1_47_0.tar.gz</span></tt></li> <li><tt class="file docutils literal"><span class="pre">ecflow_2_0_2631.tar.gz</span></tt></li> </ul> </div></blockquote> </li> <li><p class="first">Create a directory for the build:</p> <div class="highlight-python"><pre>> mkdir /tmp/ecflow_build</pre> </div> </li> <li><p class="first">Copy the the two tar file into this directory, then change directory to <tt class="file docutils literal"><span class="pre">/tmp/ecflow_build</span></tt></p> </li> <li><p class="first">Un-zip then un-tar the two file files:</p> <div class="highlight-python"><div class="highlight"><pre><span class="c"># gunzip boost_1_47_0.tar.gz</span> <span class="c"># gunzip ecflow_2_0_2631.tar.gz</span> <span class="c"># tar -xf boost_1_47_0.tar</span> <span class="c"># tar -xf ecflow_2_0_2631.tar</span> </pre></div> </div> </li> <li><p class="first">You should have two directories created:</p> <div class="highlight-python"><div class="highlight"><pre><span class="n">boost_1_47_0</span> <span class="n">ecflow_2_0_26<31</span> </pre></div> </div> </li> <li><p class="first">Create two environment variables. These are used by some of scripts:</p> <div class="highlight-python"><pre>> export WK=/tmp/ecflow_build/ecflow_2_0_2631 > export BOOST_ROOT=/tmp/ecflow_build/boost_1_47_0</pre> </div> </li> <li><div class="first line-block"> <div class="line">For installation the following environment variables are required.</div> </div> <div class="highlight-python"><div class="highlight"><pre><span class="n">ECFLOW_INSTALL_DIR</span> <span class="c"># Directory Location for client ,server and gui program's</span> <span class="n">ECFLOW_PYTHON_INSTALL_DIR</span> <span class="c"># Directory Location for ecflow python package</span> </pre></div> </div> <p>The python installation can be customised, by changing Pyext/jamfile.jam and site-config.jam</p> </li> <li><div class="first line-block"> <div class="line">Boost uses bjam for build. ecFlow also uses bjam for build and installation</div> <div class="line">bjam source is available in boost, hence we first need to build bjam itself</div> </div> <div class="highlight-python"><pre>> cd $BOOST_ROOT > ./bootstrap.sh</pre> </div> <p>Now make sure bjam is accessible from $PATH</p> </li> <li><div class="first line-block"> <div class="line">Ecflow uses some of compiled libraries in boost. The following script</div> <div class="line">will build the required lib’s, in both debug and release forms</div> <div class="line">and will configure boost build according to your platform</div> </div> <div class="highlight-python"><pre>> cd $BOOST_ROOT > $WK/build/boost_1_47_fix.sh # fix for boost, only for some platforms > $WK/build/boost_build.sh<sh # compile boost libs used by ecFlow</pre> </div> </li> <li><p class="first">We now need to build ecFlow. Currently ecflowview is only built if environment variable of name ARCH is set to linux:</p> <div class="highlight-python"><pre>> cd $WK > bjam variant=release</pre> </div> <div class="line-block"> <div class="line">If you have a multi-core machine, you can speed up the build using:</div> <div class="line">the -j<n> option. Where ‘n’ is an integer, of the number of cores.</div> </div> <div class="highlight-python"><pre>bjam variant=release -j4</pre> </div> </li> <li><div class="first line-block"> <div class="line">Once ecFlow is built it can be installed.</div> </div> <div class="highlight-python"><pre>bjam variant=release install</pre> </div> <p>This will create directories:</p> <div class="highlight-python"><pre><ECFLOW_INSTALL_DIR>/bin <ECFLOW_INSTALL_DIR>/lib <ECFLOW_INSTALL_DIR>/doc <ECFLOW_PYTHON_INSTALL_DIR></pre> </div> <p>Depending on your umask setting you may need to call chmod 755 on the executables</p> </li> <li><div class="first line-block"> <div class="line">To use the <a class="reference internal" href="/wiki/display/ECFLOW/ecFlow+Python+Api#python-api"><em>ecFlow Python Api</em></a>, you need to add/change</div> <div class="line">PYTHONPATH and LD_LIBRARY_PATH</div> </div> <div class="highlight-python"><pre>export PYTHONPATH=$PYTHONPATH:$ECFLOW_PYTHON_INSTALL_DIR export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ECFLOW_PYTHON_INSTALL_DIR</pre> </div> </li> <li><p class="first">When compiling ecflowview in a system where motif is not installed in the usual location, or where both motif and lesstif are installed, it is possible to export the environment variables MOTIF_INCLUDE and MOTIF_LIBRARY to help bjam to find the right location for include files and libraries.</p> </li> </ul> </div> |