Difference between revisions of "Installation/Dakota/CentOS SL RHEL"

From OpenFOAMWiki
(removed unnecessary extra sudo)
(Dakota 5.3.1 on CentOS 6.4: Switched around the steps for adding the links for BLAS and LAPACK. In addition, removed the numbers from the library filenames, to allow for easier portability.)
Line 61: Line 61:
 
</li>
 
</li>
  
<li>
+
<li>Search for these two lines (to find these lines search "LAPACK"):
Add the following two lines:
+
<bash>set(BLAS_LIBS "/usr/lib64/libblas.so.3.2.1")   
+
set(LAPACK_LIBS "/usr/lib64/liblapack.so.3.2.1")</bash>
+
just above the lines (to find these lines search "LAPACK"):  
+
 
<bash>    if(MSVC)  
 
<bash>    if(MSVC)  
 
         find_package(LAPACK REQUIRED NO_MODULE)</bash>
 
         find_package(LAPACK REQUIRED NO_MODULE)</bash>
 +
Right above the first line, add the following two lines:
 +
<bash>set(BLAS_LIBS "/usr/lib64/libblas.so")   
 +
set(LAPACK_LIBS "/usr/lib64/liblapack.so")</bash>
 
</li>
 
</li>
 
</ol>
 
</ol>

Revision as of 16:13, 4 May 2014

1 Introduction

This page is dedicated to explaining how to install Dakota in:

  • Community ENTerprise Operating System, aka CentOS.
  • Red Hat Enterprise Linux, aka RHEL.
  • Scientific Linux, aka SL.

In theory, all of the above follow the same versioning. Therefore, at the time this page was first written, RHEL, CentOS and SL were all at version 6.4.

If you do not yet feel comfortable using Linux, then perhaps you better first read the page Working with the Shell and train a bit with the shell/terminal environments, so you can have a better perception of the steps shown below.


2 Copy-Paste steps

A few notes before you start copy-pasting:

  1. Lines that start with # don't have to be copy-pasted. They are just comments to let you know what's going on.
  2. One wrong character is enough for breaking this guide, so make sure you can read the characters properly or that the installed language system does not break the copied characters!


2.1 Dakota 5.3.1 on CentOS 6.4

The following instructions are taken from this post: Dakota 5.3.1 installation with CentOS 6.4 and OF2.2.x - post #8

  1. Switch to root:
    sudo su -
  2. Install the following packages:
    yum install boost boost-system boost-signals boost-regex boost-filesystem boost-devel \
    blas blas-devel lapack lapack-devel openmpi openmpi-devel openmotif openmotif-devel \
    libX11 libXau libXext libXmu libXmu-devel libXp libXp-devel libXpm libXpm-devel
  3. Logout from root:
    exit
  4. Uncompress the source code tar from Dakota website: Dakota download page
  5. In the CMakeLists.txt file, do the following modifications:
    1. Instead of:
      option(BUILD_SHARED_LIBS "Build shared libraries?" ON)   #145 line 
       

      Set libraries as static in the following way:

      # option(BUILD_SHARED_LIBS "Build shared libraries?" ON) 
      # Build static libraries ONLY 
      set(BUILD_STATIC_LIBS ON CACHE BOOL "Set to ON to build static libraries" FORCE) 
      set(BUILD_SHARED_LIBS OFF CACHE BOOL "Set to ON to build DSO libraries" FORCE)

      this modification is necessary because using shared libraries can create a conflict with an OpenFOAM library called libsampling.so, which has the same name of a Dakota library. The problem disappeared by using static libraries.

    2. Set to "on" the Documentation installation:
      option(ENABLE_DAKOTA_DOCS "Enable DAKOTA documentation build." ON)
    3. Search for these two lines (to find these lines search "LAPACK"):
          if(MSVC) 
              find_package(LAPACK REQUIRED NO_MODULE)

      Right above the first line, add the following two lines:

      set(BLAS_LIBS "/usr/lib64/libblas.so")    
      set(LAPACK_LIBS "/usr/lib64/liblapack.so")
  6. Start the compilation process:
    cd /home/yourPATH         #where you want to install Dakota 
    cmake28 /home/download/DAKOTA/sourceCodeDistribution     # where you downloaded the source code
    make dakota
  7. Set the directory of installation:
    1. Open the cmake_install.cmake file with your favourite text editor:
      gedit cmake_install.cmake

      Set the variable CMAKE_INSTALL_PREFIX as:

      set(CMAKE_INSTALL_PREFIX "/home/yourPATH")
    2. Then in terminal:
      make install
  8. Update the .bashrc by adding the following lines
    export PATH=$PATH:/home/yourPATH/bin:/home/yourPATH/test  
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/yourPATH/bin:/home/yourPATH/lib
  9. Open a new terminal, or run:
    source ~/.bashrc

    and/to activate the OpenFOAM shell environment.

  10. In the same terminal check that your Dakota installation is working by running:
    dakota -v

    If you get a message of this type:

    DAKOTA version 5.3.1 released 05/15/2013. 
        Subversion revision 1606 built Nov 17 2013 15:43:33.

    everything should be OK.