zoukankan      html  css  js  c++  java
  • ORNL cadesvirtues上编译 RMG/ Compile RMG on Cadesvirtues at ORNL

    System information:

    Linux version 3.10.0-327.4.4.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Tue Jan 5 16:07:00 UTC 2016

    Step 1: Load all required modules (All other modules have been compiled separately, and will be found by cmake later).

    module load cmake/3.6.1

    Step 2: Modify CMakeFindRootPath.inc file in source code directory: add all separately compiled modules' paths here.

    set(CMAKE_FIND_ROOT_PATH
    /software/user_tools/current/cades-virtues/apps/fftw/gcc5/3.3.4/
    /software/tools/spack/opt/spack/linux-x86_64/gcc-4.8.5/openblas-0.2.15-f74b2gb6oq6bdcwpewkbbgake2rbe25z
    /home/z8j/softwares/pfft
    /home/z8j/softwares/spglib-1.9.5
    /home/z8j/softwares/libxc-2.2.3
    /home/z8j/softwares/bzip2-1.0.6
    /home/z8j/softwares/scalapack-2.0.2/build
    )

    Step 3: Modify cmake/Modules/FindFFTW.cmake. There is an error linking FFTW library if we use static libray here, so we need to make sure that cmake find the shared library of FFTW(While in other cases, we will have to use static library, which I am also confused).

    # - Find FFTW
    # Find the native FFTW3 includes and library
    #
    #  FFTW_INCLUDES    - where to find fftw3.h
    #  FFTW_LIBRARIES   - List of libraries when using FFTW3.
    #  FFTW_FOUND       - True if FFTW3 found.
    
    if (FFTW_INCLUDES)
      # Already in cache, be silent
      set (FFTW_FIND_QUIETLY TRUE)
    endif (FFTW_INCLUDES)
    
    find_path (FFTW_INCLUDES fftw3.h)
    if(NOT FFTW_INCLUDES)
        find_path (FFTW_INCLUDES dfftw3.h)
    endif(NOT FFTW_INCLUDES)
    
    find_library (FFTW_LIBRARIES NAMES dfftw3)
    if(NOT FFTW_LIBRARIES)
        find_library (FFTW_LIBRARIES NAMES libfftw3.a)
    endif(NOT FFTW_LIBRARIES)
    
    if(NOT FFTW_LIBRARIES)
        find_library (FFTW_LIBRARIES NAMES fftw3)
    endif(NOT FFTW_LIBRARIES)
    
    find_library (FFTW_MPI_LIBRARIES NAMES libfftw3_mpi.so)
    
    # handle the QUIETLY and REQUIRED arguments and set FFTW_FOUND to TRUE if
    # all listed variables are TRUE
    include (FindPackageHandleStandardArgs)
    find_package_handle_standard_args (FFTW DEFAULT_MSG FFTW_LIBRARIES FFTW_INCLUDES)
    
    mark_as_advanced (FFTW_LIBRARIES FFTW_INCLUDES)

    Step 4: run following commands in order.

    cmake .
    make -j 4 rmg-cpu
  • 相关阅读:
    Android Permission 访问权限大全(转)
    .NET中DateTime.Now.ToString的格式化字符串
    linux
    code only
    常用JavaScript操作页面元素的方法
    C#将字符串数组转换为以逗号分隔的字符串
    C#去除数组空格
    追源索骥:透过源码看懂Flink核心框架的执行流程
    高并发请求的缓存设计策略
    spark 2.3 导致driver OOM的一个SparkPlanGraphWrapper源码的bug
  • 原文地址:https://www.cnblogs.com/zjyx/p/5898401.html
Copyright © 2011-2022 走看看