0

I have successfully built VTK 7.1.1 and Qt 5.3.2 with MSVC2013. I have downloaded GCDM and configured with Cmake with no shared_lib. I can build the ALL_BUILD project in GDCM solution configured with CMake, but the INSTALL project can not be built and it gives me this error:

1>------ Build started: Project: vtkgdcm, Configuration: Debug x64 ------
1>  vtkImageMapToColors16.cxx
1>c:\vtk\gdcm-2.6.7\utilities\vtk\vtkImageMapToColors16.h(116): error C2555: 'vtkImageMapToColors16::GetMTime': overriding virtual function return type differs and is not covariant from 'vtkObject::GetMTime'
1>          C:\VTK\VTK-7.1.1\Common\Core\vtkObject.h(107) : see declaration of 'vtkObject::GetMTime'
2>------ Build started: Project: INSTALL, Configuration: Debug x64 ------
2>  -- Install configuration: "Debug"
2>  CMake Error at cmake_install.cmake:31 (file):
2>    file INSTALL cannot find "C:/VTK/bin/../../../bin/vtkCommonCore-7.1.dll".
2>  
2>  
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: The command "setlocal
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: "C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmErrorLevel
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: exit /b %1
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmDone
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :VCEnd" exited with code 1.
========== Build: 0 succeeded, 2 failed, 17 up-to-date, 0 skipped ==========

It says it can not find vtkCommonCore-7.1.dll ,and that file does not exist on my vtk, but the .lib version of the file exists. Can anybody save me?

polo
  • 23
  • 5
  • Is the output of vtkgdcm likely to be the dll you are looking for? It looks like that project failed to build due to the compile error in vtkImageMapToColors16.h(116). – Jamey Apr 07 '17 at 15:12
  • Dear Jamey, Thanks, that was not the problem though. The problem was when I built VTK with no shared_lib option, it only created .lib files and no .dll. I could overcome that but rebuilding with shared_libs. But now there is another problem: I can not build GDCM ALL_BUILD. It gives me this error: LINK : fatal error LNK1104: cannot open file '..\..\..\..\bin\Debug\vtkgdcm.lib' – polo Apr 07 '17 at 18:28

1 Answers1

0

I solved my problem this way: First, I built the .dll missing files by building VTK using shared_libs option ON.

Secondly, as Jamey mentioned I fixed the error C2555 by changing the definition of GetMTime in vtkImageMapToColors16, apparently VTK version 7.1.1 was not compatible with GDCM 2.6. So I changed the output type of GetMTime function from long int to output of the virtual function in vtkObject::GetMTime.

polo
  • 23
  • 5