[vtkusers] Problem depending on VTK >= 8.1 with CMake 3.12.1 and VTK 8.1.1 on Win 10/MSVC 2017
Elvis Stansvik
elvis.stansvik at orexplore.com
Sun Aug 19 04:45:23 EDT 2018
2018-08-19 10:05 GMT+02:00 Elvis Stansvik <elvis.stansvik at orexplore.com>:
> Hey all,
>
> In the past it was worked for us to depend on VTK 8.1 with
>
> find_package(VTK 8.1 ....)
>
> But now I'm having trouble with a setup like this:
>
> - Windows 10
> - CMake 3.12.1
> - VTK 8.1.1
>
> The error I get when configuring our project is:
>
> -- Selecting Windows SDK version 10.0.17134.0 to target Windows 10.0.16299.
> CMake Error at CMakeLists.txt:29 (find_package):
> Could not find a configuration file for package "VTK" that is compatible
> with requested version "8.1".
>
> The following configuration files were considered but not accepted:
>
> C:/Users/Elvis/Dev/VTK-8.1.1-inst/lib/cmake/vtk-8.1/VTKConfig.cmake,
> version: 8.1.1 (64bit)
>
> This is nonsensical to me. Version 8.1.1 (which was found) should be
> able to satisfy 8.1.
By digging in VTKConfigVersion.cmake I've found out that this is due
to some 32/64 bit mismatch (would be nice with a better error
message).
I.e. this check is failing:
# check that the installed version has the same 32/64bit-ness as the
one which is currently searching:
if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "8")
math(EXPR installedBits "8 * 8")
set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
set(PACKAGE_VERSION_UNSUITABLE TRUE)
endif()
I'll try to figure out where I went wrong, but I'm pretty sure
everything has been done in a MSVC 64-bit native command prompt, and
the machine is 64-bit.
Elvis
>
> Just to test, I set the dependency in our CMakeLists.txt to exactly
> 8.1.1, and got:
>
> -- Selecting Windows SDK version 10.0.17134.0 to target Windows 10.0.16299.
> CMake Error at CMakeLists.txt:29 (find_package):
> Could not find a configuration file for package "VTK" that is compatible
> with requested version "8.1.1".
>
> The following configuration files were considered but not accepted:
>
> C:/Users/Elvis/Dev/VTK-8.1.1-inst/lib/cmake/vtk-8.1/VTKConfig.cmake,
> version: 8.1.1 (64bit)
>
> Which makes it obvious something is not right.
>
> For reference, cmake was invoked like
>
> cmake -DCMAKE_PREFIX_PATH=C:/Users/Elvis/Dev/qwt-6.1.2-inst;C:/Users/Elvis/Dev/VTK-8.1.1-inst;C:/Users/Elvis/Dev/HDF5/1.10.2;C:/Users/Elvis/Dev/karchive-5.36.0-inst
> ..
>
> where C:/Users/Elvis/Dev/VTK-8.1.1-inst is the installation prefix of VTK.
>
> Any ideas? Was there some change in CMake recently that could have caused this?
>
> Many thanks in advance,
> Elvis
More information about the vtkusers
mailing list