Skip to content

Compiling EnergyPlus

EnergyPlus™ is a whole building energy simulation program.[1]

EnergyPlus is installed on Proteus: see the article EnergyPlus

Requirements

  • Needs compiler with C++11 support; these two work:
    • Intel Composer XE 2019
    • GCC 7.4.0
  • CMake

Modules

  • intel/composerxe/2019u1 AND gcc/7.4.0 -- Composer XE relies on C++ standard libraries provided by GCC
  • binutils/2.32
  • cmake
  • texlive

Configure

  • Use CMake
    • ccmake terminal UI is convenient
  • Build Fortran stuff

BUILD_FORTRAN   =    ON

  • Build performance tests

BUILD_PERFORMANCE_TESTS = ON

  • Build shared libraries

BUILD_SHARED_LIBS       = ON

  • Build test stuff

BUILD_TESTING   =    ON

  • Need to explicitly link to MKL -- see Intel® Math Kernel Library Link Line Advisor[2]

CMAKE_EXE_LINKER_FLAGS_RELEASE =   -L${MKLROOT}/lib/intel64 -Wl,-rpath,${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread

  • Set flags for shared libraries (even if BUILD_SHARED_LIBS is off):

CMAKE_CXX_FLAGS =    -fPIC CMAKE_C_FLAGS   =    -fPIC

  • Enable OpenMP for multithreaded

ENABLE_OPENMP   =    ON

References

[1] EnergyPlus website

[2] Intel® Math Kernel Library Link Line Advisor