[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:24:59 EDT 2018


Forgot to mention, this is with MSVC 2017.

Also for reference, it works on our regular Windows build worker, which has:

- Windows 8.1
- MSVC 2015
- CMake 3.7.2
- VTK 8.1.1

Everything is built the same way there, this is why I suspect some
behavioral change in CMake could be the cause.

Our find_package invocation for VTK is:

find_package(VTK 8.1 REQUIRED
  COMPONENTS
    vtkChartsCore
    vtkCommonCore
    vtkCommonDataModel
    vtkCommonExecutionModel
    vtkFiltersSources
    vtkGUISupportQt
    vtkImagingCore
    vtkImagingStatistics
    vtkInteractionStyle
    vtkRenderingAnnotation
    vtkRenderingContext2D
    vtkRenderingContextOpenGL2
    vtkRenderingCore
    vtkRenderingFreeType
    vtkRenderingOpenGL2
    vtkRenderingQt
    vtkRenderingVolume
    vtkRenderingVolumeOpenGL2
    vtkViewsContext2D
)

VTK was built with:

cd \Users\Elvis\Dev\VTK-8.1.1
mkdir build
cd build
cmake ^
    -DCMAKE_INSTALL_PREFIX=C:/Users/Elvis/Dev/VTK-8.1.1-inst ^
    -DVTK_Group_Qt=ON ^
    -DVTK_QT_VERSION=5 ^
    -DQt5_DIR=C:/Users/Elvis/Dev/Qt/Qt5.11.1/5.11.1/msvc2017_64/lib/cmake/Qt5 ^
    -DVTK_Group_Imaging=ON ^
    -DVTK_Group_Views=ON ^
    -DVTK_Group_MPI=OFF ^
    -DVTK_Group_Tk=OFF ^
    -DVTK_Group_Web=OFF ^
    -DVTK_Group_StandAlone=OFF ^
    -DBUILD_TESTING=OFF ^
    -DVTK_USE_SYSTEM_LIBRARIES=OFF ^
    -DCMAKE_BUILD_TYPE=Release ^
    -DCMAKE_MAKE_PROGRAM=C:/Users/Elvis/Dev/ninja-win/ninja.exe ^
    -GNinja ^
    .. > cmake.out 2>&1
cmake --build . --config "Release" > build.out 2>&1
cmake --build . --target install > install.out 2>&1

Or could the error I'm getting in fact not be about a version
mismatch, but some missing VTK module? (very cryptic if so).

I'm attaching the output from the configuration of VTK on the
problematic machine (see cmake.out).

Elvis

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.
>
> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cmake.out
Type: application/octet-stream
Size: 14161 bytes
Desc: not available
URL: <https://public.kitware.com/pipermail/vtkusers/attachments/20180819/08bf4407/attachment.obj>


More information about the vtkusers mailing list