[gdal-dev] cmake status update - 99% good news!
Joaquim Manuel Freire Luís
jluis at ualg.pt
Tue Jan 25 11:26:36 PST 2022
>> I made also an attempt on Windows and so far my findings are:
>> The docs say that the PROJ variables should be
>> PROJ_INCLUDE_DIR
>> PROJ_LIBRARY_RELEASE
>> But the lib var must in fact be
>> PROJ_LIBRARY
> How do you build exactly ?
> If you build with "cmake --build . --config Release" then I believe PROJ_LIBRARY_RELEASE should be honored. Perhaps if you don't specify a configuration (is it possible with MSVC CMake builds ? I don't have a VM started right now), then PROJ_LIBRARY will be used.
I build with Ninja and by including a ConfigUser.make file (like GMT and NetCDF do) that is made of lines like
set(PROJ_INCLUDE_DIR "C:/programs/compa_libs/proj5_GIT/compileds/VC14_64/include")
set(PROJ_LIBRARY "C:/programs/compa_libs/proj5_GIT/compileds/VC14_64/lib/proj.lib")
I also built all the dependencies myself. I do this because I want to be able to control the dll file name (I'll get back to this in a future thread).
>> Couldn't yet find a way to build with HDF5, ECW and MRSID, which I can do with no problems with the current nmake solution.
> HDF5 1.12.1 is tested with Windows Conda builds
HDF5 is a bit confusing. Here I use the same settings that I use to build NetCDF, some settings are likely repeated but it works to build netCDF
set(HDF5_path C:/programs/compa_libs/hdf5-1.10.5)
set(HDF5_ROOT_DIR ${HDF5_path}/compileds/VC14_64)
set(HDF5_INCLUDE_DIRS ${HDF5_path}/compileds/VC14_32/include)
set(HDF5_LIBRARIES ${HDF5_path}/compileds/VC14_64/lib/hdf5.lib ${HDF5_path}/compileds/VC14_64/lib/hdf5_hl.lib ${HDF5_path}/compileds/VC14_${BITAGE}/lib/hdf5_hl_cpp.lib ${HDF5_path}/compileds/VC14_${BITAGE}/lib/hdf5_cpp.lib)
set(HDF5_HL_LIBRARIES ${HDF5_path}/compileds/VC14_64/lib/hdf5.lib ${HDF5_path}/compileds/VC14_${BITAGE}/lib/hdf5_hl.lib ${HDF5_path}/compileds/VC14_${BITAGE}/lib/hdf5_hl_cpp.lib ${HDF5_path}/compileds/VC14_${BITAGE}/lib/hdf5_cpp.lib)
but the build complains with
-- Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS) (found version "1.10.5")
>> For ECW, it looks like I tested on Windows with ECW 5.5
I use SDK 3.3 and
-- Could NOT find ECW (missing: ECWnet_LIBRARY ECWC_LIBRARY NCSUtil_LIBRARY) (found version "NCS_VERSION_NUMBER 3.3.0.161")
> For MrSID, not sure I tested on Windows. Works on Linux with
DSDK-9.5.4.4709-rhel6
I don't really know what to set in this one. I have MrSID_DSDK-8.5.0.3422, that works in the nmake build
set(MRSID_INCLUDE_DIR "C:/programs/compa_libs/MrSID_DSDK-8.5.0.3422/compileds/VC14_64/include")
set(MRSID_LIBRARY "C:/programs/compa_libs/MrSID_DSDK-8.5.0.3422/compileds/VC14_64/lib/lti_dsdk.lib")
and get
-- Could NOT find ECW (missing: ECWnet_LIBRARY ECWC_LIBRARY NCSUtil_LIBRARY) (found version "NCS_VERSION_NUMBER 3.3.0.161")
More information about the gdal-dev
mailing list