diff options
Diffstat (limited to 'release_docs/CMake.txt')
| -rw-r--r-- | release_docs/CMake.txt | 301 |
1 files changed, 0 insertions, 301 deletions
diff --git a/release_docs/CMake.txt b/release_docs/CMake.txt deleted file mode 100644 index 2d15741..0000000 --- a/release_docs/CMake.txt +++ /dev/null @@ -1,301 +0,0 @@ -************************************************************************ -* Build and Install HDF5 C/C++ Library with CMake * -************************************************************************ - -Notes: This short instruction is written for users who want to quickly build - HDF5 library and tools from the HDF5 source code package using the - CMake tools. - - More information about using CMake can be found at the KitWare site, - www.cmake.org. - - CMake uses the command line, however the visual CMake tool is - recommended for the configuration step. The steps are similiar for - all the operating systems supported by CMake. - - NOTES: - 1. Using CMake for building and using HDF5 is under active development. - While we have attempted to provide error-free files, please - understand that development with CMake has not been extensively - tested outside of HDF. The CMake specific files may change - before the next release. - - 2. CMake was originally introduced to support development on Windows, - however it should be usable on any system where CMake is supported. - Please send us any comments on how CMake support can be improved on - any system. Visit the KitWare site for more information about CMake. - - 3. If you are building HDF5 on Windows, do NOT use or execute any - files from the windows folder. - - 4. Build and test results can be submitted to our CDash server at: - cdash.hdfgroup.uiuc.edu. - Please read the HDF and CDash document at: - www.hdfgroup.org/CDash/HowToSubmit. - - -======================================================================== - Preconditions -======================================================================== - - 1. We suggest you obtain the latest CMake for windows from the Kitware - web site. The HDF5 1.8.x product requires CMake version 2.8.6. - - 2. If you plan to use Zlib or Szip; - A. Download the packages and install them - in a central location. For example on Windows, create a folder extlibs - and install the packages there. Windows users should also read Section V - in INSTALL_Windows.txt. - B. Use source packages from a SVN server by adding the following CMake - options: - HDF5_ALLOW_EXTERNAL_SUPPORT:STRING="SVN" - ZLIB_SVN_URL:STRING="http://some_location/zlib/trunk" - SZIP_SVN_URL:STRING="http://some_location/szip/trunk" - where "some_location" is the URL to the SVN repository. - C. Use source packages from a compressed file by adding the following CMake - options: - HDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ" - ZLIB_TGZ_NAME:STRING="zlib_src.ext" - SZIP_TGZ_NAME:STRING="szip_src.ext" - TGZ_PATH:STRING="some_location" - where "some_location" is the URL or full path to the compressed file and - ext is the type of compression file. - - -======================================================================== - Building HDF5 C/C++ Libraries with CMake -======================================================================== - - 1. Run CMake - - The CMake executable is named "cmake-gui.exe" on Windows and should be - available in your Start menu. For Linux, UNIX, and Mac users the - executable is named "cmake-gui" and can be found where CMake was - installed. - Specify the source and build directories. It is recommemded that you - choose a build directory different then the source directory - (for example on Windows, if the source is at c:\MyHDFstuff\hdf5, then - use c:\MyHDFstuff\hdf5\build or c:\MyHDFstuff\build\hdf5). - - OPTIONAL: - Users can perform the configuration step without using the visual cmake-gui - program. We use the file cacheinit.cmake in the config/cmake folder for - our testing. This file enables all the basic options and we turn specific - options on or off for testing using the following command line within the build - directory: - - cmake -C <sourcepath>/config/cmake/cacheinit.cmake -G "<generator>" [-D<options>] <sourcepath> - - Where <generator> is - * Borland Makefiles - * MSYS Makefiles - * MinGW Makefiles - * NMake Makefiles - * Unix Makefiles - * Visual Studio 10 - * Visual Studio 10 Win64 - * Visual Studio 6 - * Visual Studio 7 - * Visual Studio 7 .NET 2003 - * Visual Studio 8 2005 - * Visual Studio 8 2005 Win64 - * Visual Studio 9 2008 - * Visual Studio 9 2008 Win64 - - <options> is: - * SZIP_INCLUDE_DIR:PATH=<path to szip includes directory> - * SZIP_LIBRARY:FILEPATH=<path to szip/library file> - * ZLIB_INCLUDE_DIR:PATH=<path to zlib includes directory> - * ZLIB_LIBRARY:FILEPATH=<path to zlib/library file> - * <HDF5OPTION>:BOOL=[ON | OFF] - - <cacheinit.cmake> is: - # This is the CMakeCache file. - ######################## - # EXTERNAL cache entries - ######################## - SET (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries" FORCE) - SET (BUILD_TESTING ON CACHE BOOL "Build HDF5 Unit Testing" FORCE) - SET (HDF5_BUILD_CPP_LIB ON CACHE BOOL "Build HDF5 C++ Library" FORCE) - SET (HDF5_BUILD_EXAMPLES ON CACHE BOOL "Build HDF5 Library Examples" FORCE) - SET (HDF5_BUILD_FORTRAN ON CACHE BOOL "Build FORTRAN support" FORCE) - SET (HDF5_BUILD_HL_LIB ON CACHE BOOL "Build HIGH Level HDF5 Library" FORCE) - SET (HDF5_BUILD_TOOLS ON CACHE BOOL "Build HDF5 Tools" FORCE) - SET (HDF5_DISABLE_COMPILER_WARNINGS OFF CACHE BOOL "Disable compiler warnings" FORCE) - SET (HDF5_ENABLE_HSIZET ON CACHE BOOL "Enable datasets larger than memory" FORCE) - SET (HDF5_ENABLE_PARALLEL OFF CACHE BOOL "Enable parallel build (requires MPI)" FORCE) - SET (HDF5_ENABLE_SZIP_ENCODING ON CACHE BOOL "Use SZip Encoding" FORCE) - SET (HDF5_ENABLE_SZIP_SUPPORT ON CACHE BOOL "Use SZip Filter" FORCE) - SET (HDF5_ENABLE_Z_LIB_SUPPORT ON CACHE BOOL "Enable Zlib Filters" FORCE) - SET (HDF5_ENABLE_COVERAGE OFF CACHE BOOL "Enable code coverage for Libraries and Programs" FORCE) - - 2. Configure the cache settings - - 2.1 Click the Configure button. If this is the first time you are - running cmake-gui in this directory, you will be prompted for the - generator you wish to use (for example on Windows, Visual Studio 9 2008). - CMake will read in the CMakeLists.txt files from the source directory and - display options for the HDF5 project. After the first configure you - can adjust the cache settings and/or specify locations of other programs. - - Any conflicts or new values will be highlighted by the configure - process in red. Once you are happy with all the settings and there are no - more values in red, click the Generate button to produce the appropriate - build files. - - On Windows, if you are using a Visual Studio generator, the solution and - project files will be created in the build folder. - - On linux, if you are using the Unix Makefiles generator, the Makefiles will - be created in the build folder. - - 2.2 Alternative command line example on Windows in c:\MyHDFstuff\hdf5\build directory: - - cmake -C ../config/cmake/cacheinit.cmake -G "Visual Studio 9 2008" \ - -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=OFF -DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=OFF .. - - 2.3 On Windows, if you are using a VS Express version you must be sure that the - following two options are correctly set/unset: - - HDF5_NO_PACKAGES:BOOL=ON - HDF5_USE_FOLDERS:BOOL=OFF - - 3. Build HDF5 - - On Windows, you can build HDF5 using either the Visual Studio Environment - or the command line. The command line is used on linux, Unix, and Mac. - - To build from the command line, navigate to your build directory and - execute the following; - - cmake --build . --config {Debug | Release} - - NOTE: "--config {Debug | Release}" may be optional on your platform. We - recommend choosing either Debug or Release on Windows. - - 3.1 If you wish to use the Visual Studio environment, open the solution - file in your build directory. Be sure to select either Debug or - Release and build the solution. - - 3.2.1 The external libraries (zlib and szip) can be configured - to allow building the libraries by downloading from a SVN repository. - The option is 'HDF5_ALLOW_EXTERNAL_SUPPORT'; by adding the following - configuration option: - -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING="SVN" - - The options to control the SVN URL (config/cmake/cacheinit.cmake file): - ZLIB_SVN_URL:STRING="http://svn.hdfgroup.uiuc.edu/zlib/trunk" - SZIP_SVN_URL:STRING="http://svn.hdfgroup.uiuc.edu/szip/trunk" - These should be changed to your location. - - 3.2.2 Or the external libraries (zlib and szip) can be configured - to allow building the libraries by using a compressed file. - The option is 'HDF5_ALLOW_EXTERNAL_SUPPORT'; by adding the following - configuration option: - -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ" - - The options to control the SVN URL (config/cmake/cacheinit.cmake file): - ZLIB_TGZ_NAME:STRING="zlib_src.ext" - SZIP_TGZ_NAME:STRING="szip_src.ext" - TGZ_PATH:STRING="some_location" - where "some_location/xxxx_src.ext" is the URL or full path to the - compressed file and where ext is the type of the compression file like: - .bz2, .tar, .tar.gz, .tgz, .zip - - 4. Test HDF5. - - To test the build, navigate to your build directory and execute; - - ctest . -C {Debug | Release} - - NOTE: "-C {Debug | Release}" may be optional on your platform. We - recommend choosing either Debug or Release to match the build - step on Windows. - - 5. Packaging HDF5 - - To package the build into a simple installer using the NullSoft installer NSIS - on Windows, or into compressed files (.tar.gz, .sh, .zip), use the CPack tool. - - To package the build, navigate to your build directory and execute; - - cpack -C {Debug | Release} CPackConfig.cmake - - NOTE: We have just introduced the packaging capability and it has not been - extensively tested. Please send us comments on how it can be improved. - See NSIS note 8 of this document. - Also, if you are using a VS Express version or do not want to enable - the packaging components, set HDF5_NO_PACKAGES to ON (on the command - line add -DHDF5_NO_PACKAGES:BOOL=ON) - - 6. The files that support building HDF5 with CMake are all the files in the - config/cmake folder, the CMakeLists.txt files in each source folder, and - CTestConfig.cmake. CTestConfig.cmake is specific to the internal testing - performed by The HDF Group. It should be altered for the users - installation and needs. - - 7. More information about using CMake can be found at the KitWare site, - www.cmake.org. - - 8. Nullsoft Scriptable Install System - The Nullsoft Scriptable Install System (NSIS) is an open source installation - system. It was created by the WinAmp authors to distribute that application, - but it is now a general-purpose system which anyone might use. NSIS installers - recognize /S for silent installation and /D=dir to specify the - "output directory", which is where the program will be installed. These - options are case-sensitive, so be sure to type them in upper case. - - -======================================================================== - All options for HDF5 C/C++ Libraries with CMake -======================================================================== -OPTION (HDF5_Enable_Clear_File_Buffers "Securely clear file buffers before writing to file" ON) -OPTION (HDF5_Enable_Instrument "Instrument The library" HDF5_Enable_Instrument) -OPTION (HDF5_STRICT_FORMAT_CHECKS "Whether to perform strict file format checks" OFF) -OPTION (HDF5_METADATA_TRACE_FILE "Enable metadata trace file collection" OFF) -OPTION (HDF5_WANT_DATA_ACCURACY "IF data accuracy is guaranteed during data conversions" ON) -OPTION (HDF5_WANT_DCONV_EXCEPTION "exception handling functions is checked during data conversions" ON) -OPTION (HDF5_ENABLE_CODESTACK "Enable the function stack tracing (for developer debugging)." OFF) -OPTION (HDF5_ENABLE_HSIZET "Enable datasets larger than memory" ON) -OPTION (HDF5_ENABLE_LARGE_FILE "Enable support for large (64-bit) files on Linux." ON) -OPTION (HDF5_ENABLE_GPFS "Enable GPFS hints for the MPI/POSIX file driver" OFF) -IF (APPLE) OPTION (HDF5_BUILD_WITH_INSTALL_NAME "Build with library install_name set to the installation path" OFF) -OPTION (BUILD_SHARED_LIBS "Build Shared Libraries" OFF) -OPTION (BUILD_STATIC_EXECS "Build Static Executabless" OFF) -OPTION (BUILD_STATIC_PIC "Build Static PIC" OFF) -OPTION (HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF) -OPTION (HDF5_ENABLE_USING_MEMCHECKER "Indicate that a memory checker is used" OFF) -OPTION (HDF5_ENABLE_DEPRECATED_SYMBOLS "Enable deprecated public API symbols" ON) -OPTION (HDF5_ENABLE_TRACE "Enable API tracing capability" ON) -OPTION (HDF5_ENABLE_TRACE "Enable API tracing capability" OFF) -OPTION (HDF5_ENABLE_EMBEDDED_LIBINFO "embed library info into executables" ON) -OPTION (HDF5_DISABLE_COMPILER_WARNINGS "Disable compiler warnings" OFF) -OPTION (HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF) -OPTION (HDF5_USE_16_API_DEFAULT "Use the HDF5 1.6.x API by default" OFF) -OPTION (HDF5_USE_18_API_DEFAULT "Use the HDF5 1.8.x API by default" OFF) -OPTION (HDF5_USE_FILTER_${FILTER} "Use the ${FILTER} Filter" ON) -OPTION (HDF5_ALLOW_EXTERNAL_SUPPORT "Allow External Library Building" "NO") -OPTION (ZLIB_USE_EXTERNAL "Use External Library Building for ZLIB" 0) -OPTION (SZIP_USE_EXTERNAL "Use External Library Building for SZIP" 0) -OPTION (HDF5_ENABLE_Z_LIB_SUPPORT "Enable Zlib Filters" OFF) -OPTION (HDF5_ENABLE_SZIP_SUPPORT "Use SZip Filter" OFF) -IF (HDF5_ENABLE_SZIP_SUPPORT) OPTION (HDF5_ENABLE_SZIP_ENCODING "Use SZip Encoding" OFF) -OPTION (HDF5_PACKAGE_EXTLIBS "CPACK - include external libraries" OFF) -IF (WIN32 AND NOT CYGWIN) OPTION (HDF5_ENABLE_THREADSAFE "Enable Threadsafety" OFF) -OPTION (BUILD_TESTING "Build HDF5 Unit Testing" OFF) -OPTION (HDF5_TEST_VFD "Execute tests with different VFDs" OFF) -IF (HDF5_TEST_VFD) OPTION (HDF5_TEST_FHEAP_VFD "Execute tests with different VFDs" ON) -OPTION (HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF) -IF (HDF5_BUILD_FORTRAN) OPTION (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" OFF) -OPTION (HDF5_BUILD_EXAMPLES "Build HDF5 Library Examples" OFF) -OPTION (HDF5_BUILD_CPP_LIB "Build HDF5 C++ Library" OFF) -OPTION (HDF5_BUILD_TOOLS "Build HDF5 Tools" OFF) -OPTION (HDF5_BUILD_HL_LIB "Build HIGH Level HDF5 Library" OFF) -OPTION (HDF5_NO_PACKAGES "Do not include CPack Packaging" OFF) -OPTION (HDF5_USE_FOLDERS "Do not include CPack Packaging" OFF) - - -************************************************************************ - -Need further assistance, send email to help@hdfgroup.org - |
