************************************************************************ * Build and Install HDF5 C/C++ Library with VS .NET 2003 or 2005 * * with Windows XP (Short Version) * ************************************************************************ Notes: This short instruction is written for users who want to quickly build HDF5 library and tools from the HDF5 source code package with Microsoft Visual Studio .NET 2003 or 2005 but do not want to know HDF5 building and installation details on Windows XP. For detailed HDF5 build and install information, or if you have trouble following any steps in the instructions, please refer to INSTALL_Windows.txt for further information. For users who would like to build and test HDF5 package from the command line, please refer to INSATLL_Windows_From_Command_Line.txt. For .Net and Intel users, If you are not building HDF5 with Thread-Safe Feature, ttsafedll.dsp should always be turned off. WARNINGS: Please read CAREFULLY about HDF5 build and install preconditions and notes in INSTALL_Windows.txt before starting below procedures. ======================================================================== Preconditions ======================================================================== 1. Setup path Visual Studio .Net or 2005 Compiler. Open "System" in Control Panel. On the "Advanced" tab, click "Environment Variables", click "Path" in the "System variables" box, then click "Edit" and add your Visual C++ .Net or 2005 path (For example, C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE) into "Variable Value" and click "OK". 2. Set up path for external libraries and headers Skip this part if you don't want to use ANY compression features provided by HDF5. Please do read Section V in INSTALL_Windows.txt. You have to read this part even if you want to only use Zlib or Szip. You also need to read Section V in INSTALL_Windows.txt. Invoke Microsoft Visual C++ .Net and go to "Tools" and select "Options". In the left pane of "Option" window poped up, choose and expand "Projects", Click on "VC++ Directories". In the right pane, Find the box "Show directories for", choose "Include files", if you can not find your Zlib and Szip header path (for example, c:\zlib123\include, c:\szip\include) from the directory list, add the header path (c:\zlib123\include, c:\szip\include) to the included directories. Find the box "Show directories for", choose "Library files", If you cannot find your Zlib and Szip library path (for example, c:\zlib123\lib, c:\szip\dll) from the directory list, add the library path (c:\zlib123\lib, c:\szip\dll) to the library directories. ======================================================================== Building HDF5 C/C++ Libraries with VS 2005 ======================================================================== Note: These extra steps on apply to Visual Studio 2005. If you will be building with .Net 2003, please skip to the section below. The building procedure is almost the same as building HDF5 on .Net 2003. 1) To use zlib or szlib compression packages: Use zlib 1.2.2 DLL provided at ftp://ftp.hdfgroup.org/lib-external/zlib/1.2/bin/zlib123-windows.zip Use szlib 2.0 DLL provided at ftp://ftp.hdfgroup.org/lib-external/szip/2.0/bin/windows/xp-net 2) Make sure that WIN32 macro is set at Visual Studio 2005. 3) You may use _CRT_SECURE_NO_DEPRECATE to disable the warnings. Please refer to the next section, "Building HDF5 C/C++ Libraries with VS .NET" Please also note that the example workspace may not work properly. You may need to reset hdf5 library path. ======================================================================== Building HDF5 C/C++ Libraries with VS .NET ======================================================================== 1. Run batch file copy_hdf.bat Go to c:\MyHDFstuff\hdf5\windows and run copy_hdf.bat. This process will copy all the necessary batch files, windows specific source codes and text files saved under c:\MyHDFstuff\hdf5\windows directory to the corresponding directories under hdf5. 2. Invoke Microsoft Visual Studio compiler Invoke Microsoft Visual Studio. From the main menu, go to "File" and select the "Open Solution" option. Then open the c:\MyHDFstuff\hdf5\windows\proj\all\all.sln solution if you are building without Fortran libraries, or c:\MyHDFstuff\hdf5\windows\proj\all_fortran\all_fortran.sln if you would like to use Fortran. You should find Windows project files listed as "all", "big", etc. on the left. 3. (Optional) Disable HDF5 C++ and High level C++ In HDF5 1.8, C++ and HL C++ libraries are built by default. To opt-out, you must explicitly disable them. 3.1 Skip this step if you do want to build HDF5 High-Level C++ libraries Go to "Project" and select "Project Dependencies". Select "all", and disable all of the following projects: hdf5_hl_cpp hdf5_hl_cppdll hl_test_table_cpp hl_test_table_cppdll 3.2 Skip this step if you do want to build HDF5 High-Level libraries Go to "Project" and select "Project Dependencies". Select "all", and disable all of the project files listed in the previous step, as well as the following projects: hdf5_hl hdf5_hldll hl_test_image hl_test_imagedll hl_test_lite hl_test_litedll hl_test_table hl_test_tabledll hl_test_ds hl_test_dsdll hl_test_packet hl_test_packetdll Click on "OK", From the main menu, choose "Build"-> "Build" or "Rebuild ALL" to build both release and debug version of HDF5 Libraries. 4. Select "Build", then Select "Configuration Manager". 4.1 To build debug static libraries, debug multithreaded DLLs, and tests: In "Active Solution Configuration", select "Debug". Select "Close". Select "Build" -> "Build Solution" or "Rebuild Solution" to build debug version of project "all". 4.2 To build release static libraries, multithreaded DLLs and tests: In "Active Solution Configuration", select "Release". Select "Close". Select "Build" -> "Build Solution" or "Rebuild Solution" to build release version of project "all". Both debug and release versions must be built. Warning messages can be ignored. ======================================================================== Testing HDF5 C/C++ Libraries with VS .NET ======================================================================== HDF5 libraries and tools should be tested to make sure that they were built correctly. c:\MyHDFstuff\hdf5\hdf5check.bat was provided to test HDF5 libraries and tools. hdf5check.bat has four options: hdf5check test HDF5 C library and tools only hdf5check enablecpp test HDF5 C/C++ libraries and tools hdf5check enablefortran test HDF5 C/Fortran libraries and tools hdf5check enableall test HDF5 C/C++/Fortran libraries and tools Notes: Users who only build HDF5 C/C++ libraries ONLY have the first two options. Invoke a command prompt window and run hdf5check with appropriate options. Test results are saved in two files: c:\MyHDFstuff\hdf5\tests_results.txt c:\MyHDFstuff\hdf5\check_results.txt. In general, you only need to check tests_results.txt. If all the tests passed, then you do not have to check check_results.txt. If some tests failed, check check_results.txt can help you figure out what was wrong. If you want to test HDF5 libraries and tools one by one, please refer to Section II, step 2 in INSTALL_Windows.txt. ======================================================================== Installing HDF5 C/C++ Libraries ======================================================================== Run the batch file c:\MyHDFstuff\hdf5\installhdf5lib.bat to install all HDF5 libraries and tools into c:\MyHDFstuff\hdf5\hdf5lib directory. ======================================================================== Building HDF5 Examples and Applications ======================================================================== Building HDF5 Examples is Optional. Please read Section II, step 4 and the following part in INSTALL_Windows.txt for detailed information. ************************************************************************ Need further assistance, send email to help@hdfgroup.org