Spec-Zone.ru › CMake 3.11

FindHDF5

Find HDF5, библиотека для чтения и записи данных массивов с самоописанием.

Этот модуль вызывает компилятор оболочки HDF5, который должен быть установлен вместе с HDF5. В зависимости от конфигурации HDF5, компилятор оболочки называется либо h5cc, либо h5pcc. Если это успешно, модуль затем вызовет компилятор с аргументом -show, чтобы увидеть, какие флаги используются при компиляции приложения клиента HDF5.

Модуль может принять аргумент COMPONENTS. Если COMPONENTS не указан, то модуль поиска по умолчанию будет искать только библиотеку C HDF5. Если указан один или несколько COMPONENTS, модуль попытается найти языковые интерфейсы для указанных компонентов. Единственные допустимые компоненты — C, CXX, Fortran, HL и Fortran_HL. Если аргумент COMPONENTS не указан, модуль попытается найти только интерфейсы C.

Этот модуль будет читать переменную HDF5_USE_STATIC_LIBRARIES, чтобы определить, следует ли предпочитать статическую ссылку динамической ссылке для HDF5 и всех его зависимостей. Чтобы использовать эту функцию, убедитесь, что переменная HDF5_USE_STATIC_LIBRARIES установлена перед вызовом find_package.

Чтобы указать модулю подсказку о том, где найти установку HDF5, можно установить переменную среды HDF5_ROOT. Модуль поиска затем будет искать по этому пути при поиске исполняемых файлов, путей и библиотек HDF5.

Рассматриваются как последовательные, так и параллельные оболочки HDF5, и будет использован первый каталог, содержащий любую из них. В случае, если оба появляются в одном каталоге, предпочтительнее выбирается последовательная версия. Это поведение можно изменить, установив переменную HDF5_PREFER_PARALLEL в значение true.

Помимо поиска заголовков и библиотек, необходимых для компиляции приложения клиента HDF5, этот модуль также пытается найти инструменты, которые поставляются с дистрибутивом HDF5 и могут быть полезны для регрессионного тестирования.

Этот модуль определит следующие переменные:

HDF5_FOUND - true if HDF5 was found on the system
HDF5_VERSION - HDF5 version in format Major.Minor.Release
HDF5_INCLUDE_DIRS - Location of the hdf5 includes
HDF5_INCLUDE_DIR - Location of the hdf5 includes (deprecated)
HDF5_DEFINITIONS - Required compiler definitions for HDF5
HDF5_LIBRARIES - Required libraries for all requested bindings
HDF5_HL_LIBRARIES - Required libraries for the HDF5 high level API for all
                    bindings, if the HL component is enabled

Доступные компоненты: C, CXX, Fortran и HL. Для каждого включённого языкового интерфейса будет определена соответствующая переменная HDF5_${LANG}_LIBRARIES, а также потенциально HDF5_${LANG}_DEFINITIONS. Если компонент HL включён, то также будет определена переменная HDF5_${LANG}_HL_LIBRARIES. При включении всех компонентов будут определены следующие переменные:

HDF5_C_DEFINITIONS -- Required compiler definitions for HDF5 C bindings
HDF5_CXX_DEFINITIONS -- Required compiler definitions for HDF5 C++ bindings
HDF5_Fortran_DEFINITIONS -- Required compiler definitions for HDF5 Fortran bindings
HDF5_C_INCLUDE_DIRS -- Required include directories for HDF5 C bindings
HDF5_CXX_INCLUDE_DIRS -- Required include directories for HDF5 C++ bindings
HDF5_Fortran_INCLUDE_DIRS -- Required include directories for HDF5 Fortran bindings
HDF5_C_LIBRARIES - Required libraries for the HDF5 C bindings
HDF5_CXX_LIBRARIES - Required libraries for the HDF5 C++ bindings
HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings
HDF5_C_HL_LIBRARIES - Required libraries for the high level C bindings
HDF5_CXX_HL_LIBRARIES - Required libraries for the high level C++ bindings
HDF5_Fortran_HL_LIBRARIES - Required libraries for the high level Fortran
                            bindings.

HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO support
HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
HDF5_CXX_COMPILER_EXECUTABLE - the path to the HDF5 C++ wrapper compiler
HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper compiler
HDF5_C_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary C compiler
                                            which is also the HDF5 wrapper
HDF5_CXX_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary C++
                                              compiler which is also
                                              the HDF5 wrapper
HDF5_Fortran_COMPILER_EXECUTABLE_NO_INTERROGATE - path to the primary
                                                  Fortran compiler which
                                                  is also the HDF5 wrapper
HDF5_DIFF_EXECUTABLE - the path to the HDF5 dataset comparison tool

Следующая переменная может быть установлена для управления поиском библиотек и заголовков HDF5:

HDF5_ROOT
Указывает путь к используемой установке HDF5.
HDF5_FIND_DEBUG
Устанавливается в значение true, чтобы получить дополнительные отладочные данные.
HDF5_NO_FIND_PACKAGE_CONFIG_FILE
Устанавливается в значение true, чтобы пропустить попытки поиска %%%CODE_BLOCK_5%%.

© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.11/module/FindHDF5.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API