# Enabling Cuda throws error in VTK Build via VS2017

**URL:** <https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843>\
**Category:** Support\
**Created:** [July 23, 2020, 7:36pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843 "2020-07-23T19:36:41Z")\
**Posts on this page:** 5\
**Page:** 2

<div class="post-metadata">

**Author:** ![McDave17](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mcdave17/32/1778_2.png) [@McDave17](https://discourse.vtk.org/u/McDave17)\
**Post date:** [August 13, 2020, 3:33pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843/21 "2020-08-13T15:33:23Z")

</div>

I can’t wrap my head around this issue, why would only in CUDA compilations fail to compile `vtkSparseArray.txx`.

I can clearly see the method GetDimensions in vtkArray.h which is parent to vtkTypedArray which is parent to vtkSparseArray. Also the methods have the same type. What I’m not 100% clear about what the deal with that .txx file is. However, it is included at the end of vtkSparseArray.h and therefore should be fine.

When I compile only the module `CommonCore` the compilation is successfull, but not when compiling `AcceleratorsVTKmFilter`. Might this be a issue with nvcc? Since it might only be used on the CommonCore when compiling the accelerators, which actually uses CUDA?

---

<div class="post-metadata">

**Author:** ![RobertMaynard](https://discourse.vtk.org/user_avatar/discourse.vtk.org/robertmaynard/32/24_2.png) [@RobertMaynard](https://discourse.vtk.org/u/RobertMaynard)\
**Post date:** [August 14, 2020, 2:56pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843/22 "2020-08-14T14:56:30Z")

</div>

> [@McDave17](#):
>
> When I compile only the module `CommonCore` the compilation is successfull, but not when compiling `AcceleratorsVTKmFilter` . Might this be a issue with nvcc? Since it might only be used on the CommonCore when compiling the accelerators, which actually uses CUDA?

Since the code is in a header file it needs to be parsed by `nvcc` since the `vtkSparseArray.h` is being included by some file being included by `nvcc`.

Hopefully we can just ignore this issue as it sounds like moving to the latest versions of VTK and VTK-m solves this problem.

> [@McDave17](#):
>
> Rougly translated the simply means that the `vtkmdiympi_nompi.dll` could not be found. MPI is disabled. This is only when using the newest commit, and not the current release branch. Am I doing something wrong or was there maybe a bug committed?

This is an extra dll that is constructed by vtk-m. I expect you need to copy it to be beside the vtkAccelerators dll to get everything to work.

---

<div class="post-metadata">

**Author:** ![McDave17](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mcdave17/32/1778_2.png) [@McDave17](https://discourse.vtk.org/u/McDave17)\
**Post date:** [September 30, 2020, 3:54pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843/23 "2020-09-30T15:54:24Z")

</div>

I have to rebound on this topic once more. I successfully am able to build VTK with VTKm and AcceleratorsVTKmCore when CUDA and Qt are active also. I can successfully install VTK to my machine. However, when I build a new project which includes VTK and uses VTK-m and VTK classes I still get the error message while building my program:

```auto
2>C:\Program Files (x86)\VTK\include\vtk-9.0\vtkvtkm\vtk-m\vtkm/cont/cuda/DeviceAdapterCuda.h(31,1): fatal error C1189: #error: When VTK-m is built with CUDA enabled all compilation units that include DeviceAdapterTagCuda must use the cuda compiler
2>C:\Program Files (x86)\VTK\include\vtk-9.0\vtkvtkm\vtk-m\vtkm/cont/cuda/DeviceAdapterCuda.h(31,1): fatal error C1189: #error: When VTK-m is built with CUDA enabled all compilation units that include DeviceAdapterTagCuda must use the cuda compiler
2>C:\Program Files (x86)\VTK\include\vtk-9.0\vtkvtkm\vtk-m\vtkm/cont/cuda/DeviceAdapterCuda.h(31,1): fatal error C1189: #error: When VTK-m is built with CUDA enabled all compilation units that include DeviceAdapterTagCuda must use the cuda compiler

```

Here are the relevant CMake Flags:

 ![grafik](https://discourse.vtk.org/uploads/default/original/2X/2/2b20de6968daf9e05d5ed79c0e4329473a2f6682.png)

CMakeLists.txt:

```auto
cmake_minimum_required(VERSION 3.15)

set(PROJECT_NAME compare)

project(${PROJECT_NAME} CXX)

set(CMAKE_INCLUDE_CURRENT_DIR ON)

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(Qt5 COMPONENTS Widgets REQUIRED)
find_package(VTK REQUIRED)

include_directories(${VTK_INCLUDE_DIRS})

add_executable(${PROJECT_NAME}
  main.cpp
  mainwindow.cpp
  mainwindow.h
  mainwindow.ui
  filtermap.h
  importrawdialog.cpp
  importrawdialog.h
  importrawdialog.ui
)

target_link_libraries(${PROJECT_NAME} Qt5::Widgets ${VTK_LIBRARIES})

```

---

<div class="post-metadata">

**Author:** ![McDave17](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mcdave17/32/1778_2.png) [@McDave17](https://discourse.vtk.org/u/McDave17)\
**Post date:** [September 30, 2020, 10:35pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843/24 "2020-09-30T22:35:20Z")

</div>

@RobertMaynard Can you maybe have another look at this issue? I tried disabeling building shared libs but I had no luck with that.

---

<div class="post-metadata">

**Author:** ![McDave17](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mcdave17/32/1778_2.png) [@McDave17](https://discourse.vtk.org/u/McDave17)\
**Post date:** [October 1, 2020, 6:08pm UTC](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843/25 "2020-10-01T18:08:45Z")

</div>

How can I check if nvcc is even being used?

Using this CMakeLists didn’t help either:

```auto
cmake_minimum_required(VERSION 3.18)

set(PROJECT_NAME compare)

project(${PROJECT_NAME} LANGUAGES CUDA CXX)

include(CheckLanguage)
check_language(CUDA)

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_CUDA_ARCHITECTURES maxwell)

if(NOT DEFINED CMAKE_CUDA_STANDARD)
    set(CMAKE_CUDA_STANDARD 11)
    set(CMAKE_CUDA_STANDARD_REQUIRED ON)
endif()

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

find_package(Qt5 COMPONENTS Widgets REQUIRED)
find_package(VTK REQUIRED)

include_directories(${VTK_INCLUDE_DIRS})

add_executable(${PROJECT_NAME}
  main.cpp
  mainwindow.cpp
  mainwindow.h
  mainwindow.ui
  filtermap.h
  importrawdialog.cpp
  importrawdialog.h
  importrawdialog.ui
)

target_link_libraries(${PROJECT_NAME} ${VTK_LIBRARIES} Qt5::Widgets)

```

Can anyone provide a example project maybe?

EDIT @RobertMaynard: I added this line:  
`add_compile_definitions(VTKM_NO_ERROR_ON_MIXED_CUDA_CXX_TAG)`

These things being unresolved would mean that nvcc actually is not used? Very thankful for any pointers and help!

Build Output:

```auto
1>------ Rebuild All started: Project: ZERO_CHECK, Configuration: Debug x64 ------
1>Build started 01.10.2020 20:45:22.
1>Target _PrepareForClean:
1> Deleting file "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\ZERO_CHECK.lastbuildstate".
1>Target InitializeBuildStatus:
1> Creating "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
1>Target CustomBuild:
1> Checking Build System
1>Target FinalizeBuildStatus:
1> Deleting file "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\unsuccessfulbuild".
1> Touching "x64\Debug\ZERO_CHECK\ZERO_CHECK.tlog\ZERO_CHECK.lastbuildstate".
1>
1>Build succeeded.
1> 0 Warning(s)
1> 0 Error(s)
1>
1>Time Elapsed 00:00:00.08
2>------ Rebuild All started: Project: compare, Configuration: Debug x64 ------
2>Build started 01.10.2020 20:45:23.
2>Target _PrepareForClean:
2> Deleting file "compare.dir\Debug\compare.tlog\compare.lastbuildstate".
2>Target ResolveProjectReferences:
2>Target InitializeBuildStatus:
2> Touching "compare.dir\Debug\compare.tlog\unsuccessfulbuild".
2>Target PreBuildEvent:
2> Automatic MOC and UIC for target compare
2>Target CustomBuild:
2> Building Custom Rule D:/Studium/Abschlussarbeit/compare/CMakeLists.txt
2>Target ClCompile:
2> mocs_compilation.cpp
2> main.cpp
2> mainwindow.cpp
2> importrawdialog.cpp
2> Generating Code...
2>Target ResolvedLinkLib:
2>Target Link:
2> Creating library D:/Studium/Abschlussarbeit/compare/bin/Debug/compare.lib and object D:/Studium/Abschlussarbeit/compare/bin/Debug/compare.exp
2> mainwindow.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class vtkmContour *__cdecl vtkmContour::New(void)" (__imp_?New@vtkmContour@@SAPEAV1@XZ) referenced in function "public:__cdecl vtkNew<class vtkmContour>::vtkNew<class vtkmContour>(void)" (??0?$vtkNew@VvtkmContour@@@@QEAA@XZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(ImageDataConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00002600_00000000_8_ImageDataConverter_cpp1_ii_da4c7ccf referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(PolyDataConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00006cb0_00000000_8_PolyDataConverter_cpp1_ii_f1a129b0 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_00003180_00000000_8_ArrayConverters_cpp1_ii_16f131c5 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(DataSetConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00002c6c_00000000_8_DataSetConverters_cpp1_ii_d1a8f697 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(CellSetConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00004428_00000000_8_CellSetConverters_cpp1_ii_78e2405c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersSigned.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_56_tmpxft_0000555c_00000000_8_ArrayConvertersSigned_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersUnsigned.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_58_tmpxft_00005914_00000000_8_ArrayConvertersUnsigned_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersReal.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_54_tmpxft_00001878_00000000_8_ArrayConvertersReal_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(vtkmDataArray.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_0000468c_00000000_8_vtkmDataArray_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkAcceleratorsVTKmCore-9.0d.lib(UnstructuredGridConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_60_tmpxft_00003254_00000000_8_UnstructuredGridConverter_cpp1_ii_8c5b850e referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_filter_contour-9.0.lib(Contour.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_000037f8_00000000_8_Contour_cpp1_ii_29936978 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_filter_contour-9.0.lib(ContourInteger.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_0000563c_00000000_8_ContourInteger_cpp1_ii_9e31047c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_filter_contour-9.0.lib(ContourScalar.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_00006638_00000000_8_ContourScalar_cpp1_ii_9e31047c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_filter_common-9.0.lib(MapFieldPermutation.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_54_tmpxft_000069c0_00000000_8_MapFieldPermutation_cpp1_ii_7ae3f481 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_worklet-9.0.lib(KeysSignedTypes.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_00002fa0_00000000_8_KeysSignedTypes_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_worklet-9.0.lib(KeysUnsignedTypes.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_000048f0_00000000_8_KeysUnsignedTypes_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_worklet-9.0.lib(ScatterCounting.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_000068d4_00000000_8_ScatterCounting_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(UnknownArrayHandle.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00005298_00000000_8_UnknownArrayHandle_cpp1_ii_14a45a2c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(Field.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_40_tmpxft_0000401c_00000000_8_Field_cpp1_ii_7ecd30f2 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CoordinateSystem.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_51_tmpxft_00004728_00000000_8_CoordinateSystem_cpp1_ii_17ce3689 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(DataSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_00005e3c_00000000_8_DataSet_cpp1_ii_2d97fd84 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(PartitionedDataSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00000440_00000000_8_PartitionedDataSet_cpp1_ii_9ea2f81f referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CellSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_00004b28_00000000_8_CellSet_cpp1_ii_b27251bc referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CellSetStructured.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00005a3c_00000000_8_CellSetStructured_cpp1_ii_ee1aa31a referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(DataSetBuilderUniform.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_56_tmpxft_00004d8c_00000000_8_DataSetBuilderUniform_cpp1_ii_7138843f referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(DeviceAdapterAlgorithmCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_61_tmpxft_00000334_00000000_8_DeviceAdapterAlgorithmCuda_cpp1_ii_499def12 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CellSetExplicit.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_000069d4_00000000_8_CellSetExplicit_cpp1_ii_bde44e42 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(StorageVirtual.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_00003934_00000000_8_StorageVirtual_cpp1_ii_22b9f0f0 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(ArrayHandleVirtual.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00004cb8_00000000_8_ArrayHandleVirtual_cpp1_ii_bf2e049a referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CellSetExtrude.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_00003c78_00000000_8_CellSetExtrude_cpp1_ii_881ad1bb referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(RuntimeDeviceInformation.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_59_tmpxft_00004bb0_00000000_8_RuntimeDeviceInformation_cpp1_ii_dbd5de79 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(CudaAllocator.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_00006588_00000000_8_CudaAllocator_cpp1_ii_8727e6b7 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(DeviceAdapterRuntimeDetectorCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_67_tmpxft_000031e0_00000000_8_DeviceAdapterRuntimeDetectorCuda_cpp1_ii_48fd7b57 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> vtkm_cont-9.0.lib(DeviceAdapterMemoryManagerCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_65_tmpxft_00005d7c_00000000_8_DeviceAdapterMemoryManagerCuda_cpp1_ii_b0427ed7 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2> D:\Studium\Abschlussarbeit\compare\bin\Debug\compare.exe : fatal error LNK1120: 35 unresolved externals
2>Done building target "Link" in project "compare.vcxproj" -- FAILED.
2>
2>Done building project "compare.vcxproj" -- FAILED.
2>
2>Build FAILED.
2>
2>mainwindow.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class vtkmContour *__cdecl vtkmContour::New(void)" (__imp_?New@vtkmContour@@SAPEAV1@XZ) referenced in function "public:__cdecl vtkNew<class vtkmContour>::vtkNew<class vtkmContour>(void)" (??0?$vtkNew@VvtkmContour@@@@QEAA@XZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(ImageDataConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00002600_00000000_8_ImageDataConverter_cpp1_ii_da4c7ccf referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(PolyDataConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00006cb0_00000000_8_PolyDataConverter_cpp1_ii_f1a129b0 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_00003180_00000000_8_ArrayConverters_cpp1_ii_16f131c5 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(DataSetConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00002c6c_00000000_8_DataSetConverters_cpp1_ii_d1a8f697 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(CellSetConverters.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00004428_00000000_8_CellSetConverters_cpp1_ii_78e2405c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersSigned.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_56_tmpxft_0000555c_00000000_8_ArrayConvertersSigned_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersUnsigned.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_58_tmpxft_00005914_00000000_8_ArrayConvertersUnsigned_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(ArrayConvertersReal.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_54_tmpxft_00001878_00000000_8_ArrayConvertersReal_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(vtkmDataArray.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_0000468c_00000000_8_vtkmDataArray_cpp1_ii_5398d656 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkAcceleratorsVTKmCore-9.0d.lib(UnstructuredGridConverter.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_60_tmpxft_00003254_00000000_8_UnstructuredGridConverter_cpp1_ii_8c5b850e referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_filter_contour-9.0.lib(Contour.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_000037f8_00000000_8_Contour_cpp1_ii_29936978 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_filter_contour-9.0.lib(ContourInteger.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_0000563c_00000000_8_ContourInteger_cpp1_ii_9e31047c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_filter_contour-9.0.lib(ContourScalar.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_00006638_00000000_8_ContourScalar_cpp1_ii_9e31047c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_filter_common-9.0.lib(MapFieldPermutation.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_54_tmpxft_000069c0_00000000_8_MapFieldPermutation_cpp1_ii_7ae3f481 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_worklet-9.0.lib(KeysSignedTypes.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_00002fa0_00000000_8_KeysSignedTypes_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_worklet-9.0.lib(KeysUnsignedTypes.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_000048f0_00000000_8_KeysUnsignedTypes_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_worklet-9.0.lib(ScatterCounting.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_000068d4_00000000_8_ScatterCounting_cpp1_ii_4c827401 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(UnknownArrayHandle.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00005298_00000000_8_UnknownArrayHandle_cpp1_ii_14a45a2c referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(Field.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_40_tmpxft_0000401c_00000000_8_Field_cpp1_ii_7ecd30f2 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CoordinateSystem.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_51_tmpxft_00004728_00000000_8_CoordinateSystem_cpp1_ii_17ce3689 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(DataSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_00005e3c_00000000_8_DataSet_cpp1_ii_2d97fd84 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(PartitionedDataSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00000440_00000000_8_PartitionedDataSet_cpp1_ii_9ea2f81f referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CellSet.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_42_tmpxft_00004b28_00000000_8_CellSet_cpp1_ii_b27251bc referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CellSetStructured.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_52_tmpxft_00005a3c_00000000_8_CellSetStructured_cpp1_ii_ee1aa31a referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(DataSetBuilderUniform.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_56_tmpxft_00004d8c_00000000_8_DataSetBuilderUniform_cpp1_ii_7138843f referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(DeviceAdapterAlgorithmCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_61_tmpxft_00000334_00000000_8_DeviceAdapterAlgorithmCuda_cpp1_ii_499def12 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CellSetExplicit.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_50_tmpxft_000069d4_00000000_8_CellSetExplicit_cpp1_ii_bde44e42 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(StorageVirtual.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_00003934_00000000_8_StorageVirtual_cpp1_ii_22b9f0f0 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(ArrayHandleVirtual.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_53_tmpxft_00004cb8_00000000_8_ArrayHandleVirtual_cpp1_ii_bf2e049a referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CellSetExtrude.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_49_tmpxft_00003c78_00000000_8_CellSetExtrude_cpp1_ii_881ad1bb referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(RuntimeDeviceInformation.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_59_tmpxft_00004bb0_00000000_8_RuntimeDeviceInformation_cpp1_ii_dbd5de79 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(CudaAllocator.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_48_tmpxft_00006588_00000000_8_CudaAllocator_cpp1_ii_8727e6b7 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(DeviceAdapterRuntimeDetectorCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_67_tmpxft_000031e0_00000000_8_DeviceAdapterRuntimeDetectorCuda_cpp1_ii_48fd7b57 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>vtkm_cont-9.0.lib(DeviceAdapterMemoryManagerCuda.obj) : error LNK2019: unresolved external symbol __cudaRegisterLinkedBinary_65_tmpxft_00005d7c_00000000_8_DeviceAdapterMemoryManagerCuda_cpp1_ii_b0427ed7 referenced in function "void__ cdecl __sti____ cudaRegisterAll(void)" (? __sti____ cudaRegisterAll@@YAXXZ)
2>D:\Studium\Abschlussarbeit\compare\bin\Debug\compare.exe : fatal error LNK1120: 35 unresolved externals
2> 0 Warning(s)
2> 36 Error(s)
2>
2>Time Elapsed 00:00:24.01
3>------ Skipped Rebuild All: Project: ALL_BUILD, Configuration: Debug x64 ------
3>Project not selected to build for this solution configuration 
========== Rebuild All: 1 succeeded, 1 failed, 1 skipped ==========

```

[Previous page](https://discourse.vtk.org/t/enabling-cuda-throws-error-in-vtk-build-via-vs2017/3843.md?page=1)
