NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Hi WardHere are some suggestions that hopefully will help you to build a more robust CMake build
I am sending this as well to the HDF list, since there are often CMake posts on it
I will take a look to see how CMake handles Windows environmental variables;
The environmental variables issue is not a show stopper, I can use just a regular path
an impromptu test shows that (in the MSYS shell, at least)
A suggestion is to make the Windows CMake build on the Windows shell.Many Unix tools that may be assumed existent are just not existent on the Windows shell.
I think this is the cause of these errors: Since I don't have curl installed, I triedcmake .. -DCMAKE_INSTALL_PREFIX=W:\netcdf_install -DCMAKE_PREFIX_PATH=T:\hdf5_install_1.8.10 -D"ENABLE_DAP=OFF"
Output isCMake Error: Parse error in cache file W:/netcdf-4.3.0-rc3_2/build_dir/CMakeCache.txt. Offending entry: for command: UNAME-NOTFOUND -s-CreateProcessError: The system cannot find th
e file specified. -- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) Both of these are Unix . Why the need for a Pkg-Config dependency on a CMake builld ? If not needed, these should be taken off Then HDF5_ROOT_DIR-NOTFOUND/hdf5-config.cmake Call Stack (most recent call first): CMakeLists.txt:75 (INCLUDE) How can I specify "HDF5_ROOT_DIR" ? Shouldn't the -DCMAKE_PREFIX_PATH=T:\hdf5_install_1.8.10 be the same ? Then, finally - CMake Summary: -- Build Type: DEBUG -- Building Shared Libraries: ON -- Building netCDF-4: ON -- Building DAP Support: OFF -- Building Utilities: ON -- CMake Prefix Path: T:\hdf5_install_1.8.10 -- Using pnetcdf: OFF, -- Using Parallel IO: OFF-- Linking against: T:/hdf5_install_1.8.10/lib/hdf5dll.lib;T:/hdf5_install_1.8.10/lib/hdf5_hldll.lib;T:/hdf5_install_1.8.10/lib/zlib.lib
-- Configuring incomplete, errors occurred!I did try to install a Pkg-Config port for Win32, I'll send the results in a separate email
------ Pedro Vicente, Earth System Science University of California, Irvine http://www.ess.uci.edu/----- Original Message ----- From: "Ward Fisher" <wfisher@xxxxxxxxxxxxxxxx>
To: "Pedro Vicente" <pvicente@xxxxxxx>Cc: "HDF Users Discussion List" <hdf-forum@xxxxxxxxxxxx>; <netcdfgroup@xxxxxxxxxxxxxxxx>
Sent: Monday, March 18, 2013 8:47 AMSubject: Re: [Hdf-forum] [netcdfgroup] netCDF 4.3 Release Candidate available --- CMake build in Windows
Good morning Pedro, On 3/18/13 4:16 AM, Pedro Vicente wrote:I will take a look to see how CMake handles Windows environmental variables; an impromptu test shows that (in the MSYS shell, at least) CMake does not automatically pick up environmental variables. I was able to specify the libraries/header locations manually on the command line, however:Hi WardIf your hdf5 libraries are installed in W:\hdf5_install, for example, you would specify the following argument:-DCMAKE_PREFIX_PATH=W:\hdf5_installThe way I make Visual Studio be aware of libraries/headers is by means of Windows environment variablesfor example $HEADER_HDF5 Is defined for me as T:\hdf5\hdf5\src and $LIB_HDF5 as T:\hdf5\hdf5\proj\hdf5\Debug\hdf5d.lib1) Is it possible to do this with the supplied CMake projects, point to environment variables instead of an install path ?My HDF5 header/libs are always "development" locations, that I use for debugging, not pre built binary distributions.$ cmake .. -DZLIB_LIBRARY=/c/share/x64/shared/lib/zlib.lib \ -DCURL_LIBRARY=/c/share/x64/shared/lib/libcurl_imp.lib \ -DHDF5_HL_LIB=/c/share/x64/shared/lib/hdf5_hldll.lib \ -DHDF5_LIB=/c/share/x64/shared/lib/hdf5dll.lib \ -DHDF5_INCLUDE_DIR=/c/share/x64/shared/include/ \ -DCURL_INCLUDE_DIR=/c/share/x64/shared/include/ \ -G"Visual Studio 10 Win64"The same arguments should work from a default Windows command.exe shell, using standard Windows path syntax.2) I did try a pre built binary distribution for this case, the latest HDF5 built with CMake from here, this onehttp://www.hdfgroup.org/HDF5/release/obtain5.html#bin Windows (64-bit) Compilers: CMake VS 2010 C, C++, IVF 12<.....>Since you are using the 64-bit libraries, I think you need to specify the 64-bit Visual Studio generator via the '-G' flag, e.g. -G"Visual Studio 10 Win64". When I specify this flag, the fist few lines appear as follows:-- The C compiler identification is MSVC 16.0.40219.1 -- Check for working C compiler using: Visual Studio 10 Win64 -- Check for working C compiler using: Visual Studio 10 Win64 -- works -- Detecting C compiler ABI infoI suspect it is not finding the hdf5 and curl libraries because it is looking for 32-bit versions of the libraries, not 64. This is something that should be clarified in the documentation; thanks for pointing this out! I'll also add a section on manually specifying dependencies instead of letting CMake determine them automatically.Thanks, have a great day, -Ward-- Building for: Visual Studio 10 -- The C compiler identification is MSVC 16.0.40219.1 -- Check for working C compiler using: Visual Studio 10 -- Check for working C compiler using: Visual Studio 10 -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) CMake Error at cmake/modules/windows/FindHDF5.cmake:83 (INCLUDE): include could not find load file: HDF5_ROOT_DIR-NOTFOUND/hdf5-config.cmake Call Stack (most recent call first): CMakeLists.txt:75 (INCLUDE)-- T:/hdf5_install_1.8.10/lib/hdf5dll.lib, T:/hdf5_install_1.8.10/lib/hdf5_hldll.lib, T:/hdf5_install_1.8.10/include -- Found ZLIB: T:/hdf5_install_1.8.10/lib/zlib.lib (found version "1.2.7")-- Could NOT find CURL (missing: CURL_LIBRARY CURL_INCLUDE_DIR) CMake Error at CMakeLists.txt:417 (MESSAGE): DAP Support specified, CURL libraries are not found. -- Configuring incomplete, errors occurred! Thanks ------ Pedro Vicente, Earth System Science University of California, Irvine http://www.ess.uci.edu/----- Original Message ----- From: "Ward Fisher" <wfisher@xxxxxxxxxxxxxxxx>To: "Pedro Vicente" <pvicente@xxxxxxx> Cc: <netcdfgroup@xxxxxxxxxxxxxxxx> Sent: Friday, March 15, 2013 8:36 AMSubject: Re: [netcdfgroup] netCDF 4.3 Release Candidate available --- CMake build in WindowsHi Pedro,If your hdf5 libraries are installed in W:\hdf5_install, for example, you would specify the following argument:-DCMAKE_PREFIX_PATH=W:\hdf5_installCMake would then check this location first when looking for any header and library files. The netCDF build will use the zlib library included with the hdf5 binary distribution. If you do not have this, or if it is installed elsewhere, you can specify multiple search locations thusly:-DCMAKE_PREFIX_PATH="W:\hdf5_install;W:\zlib_install". I hope this helps! -Ward On 3/14/13 7:04 PM, Pedro Vicente wrote:Hi Ward I tried to build in Windows with CMake, using cmake -DCMAKE_INSTALL_PREFIX=W:\netcdf_install I get these messages -- Building for: Visual Studio 10 -- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) -- HDF5_LIB-NOTFOUND, HDF5_HL_LIB-NOTFOUND, HDF5_INCLUDE_DIR-NOTFOUND -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) CMake Error at CMakeLists.txt:403 (MESSAGE): HDF5 Support specified, cannot find ZLib.CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files:HDF5_INCLUDE_DIR used as include directory in directory W:/netcdf_svn used as include directory in directory W:/netcdf_svn used as include directory in directory W:/netcdf_svn used as include directory in directory W:/netcdf_svn -- Configuring incomplete, errors occurred!How can I make the supplied CMake projects to detect my HDF5 and zlib locations?Thanks Pedro ------ Pedro Vicente, Earth System Science University of California, Irvine http://www.ess.uci.edu/----- Original Message ----- From: "Ward Fisher" <wfisher@xxxxxxxxxxxxxxxx>To: <netcdfgroup@xxxxxxxxxxxxxxxx> Sent: Tuesday, February 26, 2013 5:04 PM Subject: [netcdfgroup] netCDF 4.3 Release Candidate availableGood afternoon all,We are officially announcing the availability of the netCDF-C libraries version 4.3.0, release candidate 2.Documentation and source downloads are available at: http://www.unidata.ucar.edu/downloads/netcdf/netcdf-rc/index.jsp Pre-built Windows binaries are available at: http://www.unidata.ucar.edu/software/netcdf/docs_rc/winbin.htmlThe previous Windows-specific website, http://www.unidata.ucar.edu/netcdf/win_netcdf/ will redirect to this new location. Please note that these pre-built libraries (both 32 & 64-bit) are built and tested on 64-bit Windows 7 using Visual Studio 10.Highlights of the 4.3 release include: o Many bug fixes. o Improved DAP support. o Improved parallel-netcdf support. o Improved Windows support. o Integration of CMake, allow for Visual-Studio based builds.This release candidate is the precursor to either a new release candidate, or the final 4.3.0 release (depending on the number and severity of bugs reported). As always, we welcome any bug reports and/or feedback!Have a great evening, -Ward Ward Fisher wfisher@xxxxxxxxxxxxxxxx _______________________________________________ netcdfgroup mailing list netcdfgroup@xxxxxxxxxxxxxxxxFor list information or to unsubscribe, visit: http://www.unidata.ucar.edu/mailing_lists/_______________________________________________ Hdf-forum is for HDF software users discussion. Hdf-forum@xxxxxxxxxxxx http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
netcdfgroup
archives: