Skip to content

Latest commit

 

History

History
93 lines (63 loc) · 3.78 KB

INSTALL.md

File metadata and controls

93 lines (63 loc) · 3.78 KB

HYPRE Installation Information for Unix-based systems

The simplest way to build HYPRE is:

  1. From within the src directory, type configure to configure the package for your system.

    While configure runs, it prints messages indicating which features it is checking for. Two output files are created: config.status and config.log. The config.status file can be run to recreate the current configuration, and config.log is useful for debugging configure. Upon successful completion, the file config/Makefile.config is created from its template Makefile.config.in and HYPRE is ready to be made.

  2. Type make install to compile and install HYPRE.

  3. You can remove the program binaries and object files from the source code by typing make clean. To remove additional files created by configure, type make distclean.

Optional Features:

Configure has many options to allow the user to override and refine the defaults of any system. To display the available options, type configure --help.

The make step in building HYPRE is where the compiling, loading and creation of libraries occurs. Make has several options called targets, which can be listed by running make help.

When building HYPRE without the install target, the libraries and include files are copied into the directories, src/hypre/lib and src/hypre/include.

When building with the install target, the libraries and files are copied into the directories specified by the configure option, --prefix=/usr/apps. If none were specified, the default directories are used, hypre/lib and hypre/include.

HYPRE Installation Information using CMake

CMake is another way to build HYPRE that is particularly useful for building the code on Windows machines. CMake provides a uniform interface for setting configuration options on different platforms. It does not actually build the code, but generates input for other "native" build systems such as Make (Unix platforms) or Visual Studio (Windows). Here are the basic steps:

  1. First, ensure that CMake version 3.13.0 or later is installed on the system.

  2. To build the library, run CMake on the top-level HYPRE source directory to generate files appropriate for the native build system. To prevent writing over the Makefiles in HYPRE's configure/make system above, only out-of-source builds are currently allowed with CMake. The directory src/cmbuild is provided in the release for convenience, but alternative build directories may be created by the user:

    • Unix: From the src/cmbuild directory, type cmake ...

    • Windows: Set the source and build directories to src and src/cmbuild, then click on 'Configure' following by 'Generate'.

  3. To complete the build of the library, compile with the native build system:

    • Unix: From the src/cmbuild directory, type make install.

    • Windows Visual Studio: Open the 'hypre' VS solution file generated by CMake and build the 'ALL_BUILD' target, then the 'INSTALL' target.

Optional Features:

Various configuration options can be set from within CMake. Change these as appropriate, then reconfigure/generate:

  • Unix: From the src/cmbuild directory, type ccmake .., change options, then type c then q.

  • Windows VS: Change options, then click on 'Configure' then 'Generate'.

ABI Compatibility

The hypre team currently does nothing to ensure application binary interface (ABI) compatibility. As a result, all releases (major, minor, or patch) should be treated as incompatible.