Cannot build HDF5 1.10.1 on Windows

Hello!

I need to build HDF5 with thread safety.
Previously the following command (followed by cmake --build .) worked perfectly:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ALLOW_EXTERNAL_SUPPORT=SVN -DZLIB_SVN_URL=http://svn.hdfgroup.uiuc.edu/zlib/trunk -DHDF5_ENABLE_THREADSAFE=ON ../hdf5-1.8.19

Now that http://svn.hdfgroup.uiuc.edu/zlib/trunk is no more available, I'm trying:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ -DTGZPATH=. -DHDF5_ENABLE_THREADSAFE=ON -DHDF5_BUILD_CPP_LIB=OFF -DHDF5_BUILD_HL_LIB=OFF ../hdf5-1.10.1

(ZLib.tar.gz is in the build dir)

But I get
"hdf5-1.10.1-build\ALL_BUILD.vcxproj" (целевой объект по умолчанию) (1) ->
"hdf5-1.10.1-build\ZLIB.vcxproj" (целевой объект по умолчанию) (7) ->
(Целевой объект CustomBuild) ->
   C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" завершилась с кодом 1. [E:\hdf5-1.10.1-build\ZLIB.vcxproj]

How to properly use
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ
???

Best wishes,
Andrey Paramonov

···

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

The External Support is a pair:
-DTGZPATH:PATH=/path_to_files/temp
-DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ"
Note the quotes for the String param.

Allen

···

On Tuesday, July 25, 2017 11:32:25 AM CDT Андрей Парамонов wrote:

Hello!

I need to build HDF5 with thread safety.
Previously the following command (followed by cmake --build .) worked
perfectly:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON
-DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON
-DHDF5_ALLOW_EXTERNAL_SUPPORT=SVN
-DZLIB_SVN_URL=http://svn.hdfgroup.uiuc.edu/zlib/trunk
-DHDF5_ENABLE_THREADSAFE=ON ../hdf5-1.8.19

Now that http://svn.hdfgroup.uiuc.edu/zlib/trunk is no more available,
I'm trying:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON
-DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ -DTGZPATH=.
-DHDF5_ENABLE_THREADSAFE=ON -DHDF5_BUILD_CPP_LIB=OFF
-DHDF5_BUILD_HL_LIB=OFF ../hdf5-1.10.1

(ZLib.tar.gz is in the build dir)

But I get
"hdf5-1.10.1-build\ALL_BUILD.vcxproj" (целевой объект по умолчанию) (1) ->
"hdf5-1.10.1-build\ZLIB.vcxproj" (целевой объект по умолчанию) (7) ->
(Целевой объект CustomBuild) ->
   C:\Program Files
(x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5):
error MSB6006: "cmd.exe" завершилась с кодом 1.
[E:\hdf5-1.10.1-build\ZLIB.vcxproj]

How to properly use
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ
???

Best wishes,
Andrey Paramonov

Hello!

As a side effect, I'd like to propose the attached (cosmetic) patches for HDF5 CMake config.

Back to the initial problem, somehow
build-VS2013-32.bat
from
CMake-hdf5-1.10.1.zip
works for me. I cannot understand the difference between
build-VS2013-32.bat
method and direct cmake calls with
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ
and
-DTGZPATH

:frowning:

Best wishes,
Andrey Paramonov

25.07.2017 19:32, Андрей Парамонов пишет:

hdf5-cmake.1.patch (1.92 KB)

hdf5-cmake.2.patch (603 Bytes)

···

Hello!

I need to build HDF5 with thread safety.
Previously the following command (followed by cmake --build .) worked perfectly:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ALLOW_EXTERNAL_SUPPORT=SVN -DZLIB_SVN_URL=http://svn.hdfgroup.uiuc.edu/zlib/trunk -DHDF5_ENABLE_THREADSAFE=ON ../hdf5-1.8.19

Now that http://svn.hdfgroup.uiuc.edu/zlib/trunk is no more available, I'm trying:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ -DTGZPATH=. -DHDF5_ENABLE_THREADSAFE=ON -DHDF5_BUILD_CPP_LIB=OFF -DHDF5_BUILD_HL_LIB=OFF ../hdf5-1.10.1

(ZLib.tar.gz is in the build dir)

But I get
"hdf5-1.10.1-build\ALL_BUILD.vcxproj" (целевой объект по умолчанию) (1) ->
"hdf5-1.10.1-build\ZLIB.vcxproj" (целевой объект по умолчанию) (7) ->
(Целевой объект CustomBuild) ->
   C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" завершилась с кодом 1. [E:\hdf5-1.10.1-build\ZLIB.vcxproj]

How to properly use
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ
???

Best wishes,
Andrey Paramonov

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Hello!

26.07.2017 17:06, Allen Byrne пишет:

The External Support is a pair:
  -DTGZPATH:PATH=/path_to_files/temp
  -DHDF5_ALLOW_EXTERNAL_SUPPORT:STRING="TGZ"
Note the quotes for the String param.

Thank you for your support!

However the quotes are irrelevant, as is the ":PATH" specifier.

What helped was to specify
-C hdf5-1.10.1\config\cmake\cacheinit.cmake

But then I was hit by the fact that cacheinit.cmake enables undesired SZip and who-knows-what else by default :-/

Currently I use
> cmake -G "Visual Studio 12" -C hdf5-1.10.1\config\cmake\cacheinit.cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ -DTGZPATH=E:\hdf5-build\ -DHDF5_ENABLE_Z_LIB_SUPPORT=ON -DHDF5_ENABLE_SZIP_SUPPORT=OFF -DHDF5_ENABLE_THREADSAFE=ON -DHDF5_BUILD_HL_LIB=OFF -DHDF5_BUILD_CPP_LIB=OFF -DHDF5_BUILD_FORTRAN=OFF hdf5-1.10.1

but working solution without
-C hdf5-1.10.1\config\cmake\cacheinit.cmake
is still greatly appreciated!
(it used to work previously)

Best wishes,
Andrey Paramonov

···

On Tuesday, July 25, 2017 11:32:25 AM CDT Андрей Парамонов wrote:

Hello!

I need to build HDF5 with thread safety.
Previously the following command (followed by cmake --build .) worked
perfectly:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON
-DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON
-DHDF5_ALLOW_EXTERNAL_SUPPORT=SVN
-DZLIB_SVN_URL=http://svn.hdfgroup.uiuc.edu/zlib/trunk
-DHDF5_ENABLE_THREADSAFE=ON ../hdf5-1.8.19

Now that http://svn.hdfgroup.uiuc.edu/zlib/trunk is no more available,
I'm trying:

cmake -G "Visual Studio 12" -DBUILD_SHARED_LIBS=ON
-DCMAKE_BUILD_TYPE=Release -DHDF5_ENABLE_Z_LIB_SUPPORT=ON
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ -DTGZPATH=.
-DHDF5_ENABLE_THREADSAFE=ON -DHDF5_BUILD_CPP_LIB=OFF
-DHDF5_BUILD_HL_LIB=OFF ../hdf5-1.10.1

(ZLib.tar.gz is in the build dir)

But I get
"hdf5-1.10.1-build\ALL_BUILD.vcxproj" (целевой объект по умолчанию) (1) ->
"hdf5-1.10.1-build\ZLIB.vcxproj" (целевой объект по умолчанию) (7) ->
(Целевой объект CustomBuild) ->
    C:\Program Files
(x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5):
error MSB6006: "cmd.exe" завершилась с кодом 1.
[E:\hdf5-1.10.1-build\ZLIB.vcxproj]

How to properly use
-DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ
???

Best wishes,
Andrey Paramonov

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.