Skip to content

Unable to build cudaoptflow #2834

@LaurentBerger

Description

@LaurentBerger
Detailed description
-- General configuration for OpenCV 4.5.1-dev =====================================
--   Version control:               4.4.0-967-g13a1105318
--
--   Extra modules:
--     Location (extra):            G:/Lib/opencv_contrib/modules
--     Version control (extra):     4.1.1-495-g0b8aecd9e
--
--   Platform:
--     Timestamp:                   2021-01-25T11:38:22Z
--     Host:                        Windows 10.0.19041 AMD64
--     CMake:                       3.18.4
--     CMake generator:             Visual Studio 15 2017 Win64
--     CMake build tool:            C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/MSBuild/15.0/Bin/MSBuild.exe
--     MSVC:                        1916
--     Configuration:               Debug Release
--   NVIDIA CUDA:                   YES (ver 11.2, CUFFT CUBLAS)
--     NVIDIA GPU arch:             86
--     NVIDIA PTX archs:
--

Error is

1>------ Build started: Project: opencv_cudaoptflow, Configuration: Release x64 ------
1>Building NVCC (Device) object modules/cudaoptflow/CMakeFiles/cuda_compile_1.dir/src/cuda/Release/cuda_compile_1_generated_farneback.cu.obj
1>farneback.cu
1>farneback.cu
1>Building NVCC (Device) object modules/cudaoptflow/CMakeFiles/cuda_compile_1.dir/src/cuda/Release/cuda_compile_1_generated_nvidiaOpticalFlow.cu.obj
1>nvidiaOpticalFlow.cu
1>nvidiaOpticalFlow.cu
1>Building NVCC (Device) object modules/cudaoptflow/CMakeFiles/cuda_compile_1.dir/src/cuda/Release/cuda_compile_1_generated_pyrlk.cu.obj
1>pyrlk.cu
1>pyrlk.cu
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda/common.hpp(102): warning C4996: 'cudaBindTexture2D': was declared deprecated
1>f:\program files\nvidia gpu computing toolkit\cuda\v11.2\include\cuda_runtime_api.h(8475): note: see declaration of 'cudaBindTexture2D'
1>G:/Lib/opencv_contrib/modules/cudaoptflow/src/cuda/pyrlk.cu(104): note: see reference to function template instantiation 'void cv::cuda::device::bindTexture<unsigned char>(const textureReference *,const cv::cuda::PtrStepSz<unsigned char> &)' being compiled
1>Building NVCC (Device) object modules/cudaoptflow/CMakeFiles/cuda_compile_1.dir/src/cuda/Release/cuda_compile_1_generated_tvl1flow.cu.obj
1>tvl1flow.cu
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(530): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(532): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(771): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(257): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(568): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(2681): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(2682): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(3549): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/persistence.hpp(463): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/persistence.hpp(466): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(115): warning : base class dllexport/dllimport specification differs from that of the derived class
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(135): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(138): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(139): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(140): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(501): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(693): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(729): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(530): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(532): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/types.hpp(771): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(257): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(568): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(2681): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(2682): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/mat.hpp(3549): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/persistence.hpp(463): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/persistence.hpp(466): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(115): warning : base class dllexport/dllimport specification differs from that of the derived class
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(135): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(138): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(139): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core.hpp(140): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(501): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(693): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda.hpp(729): warning : field of class type without a DLL interface used in a class with a DLL interface
1>
1>tvl1flow.cu
1>G:/Lib/opencv/modules/core/include\opencv2/core/cuda/common.hpp(102): warning C4996: 'cudaBindTexture2D': was declared deprecated
1>f:\program files\nvidia gpu computing toolkit\cuda\v11.2\include\cuda_runtime_api.h(8475): note: see declaration of 'cudaBindTexture2D'
1>G:/Lib/opencv_contrib/modules/cudaoptflow/src/cuda/tvl1flow.cu(260): note: see reference to function template instantiation 'void cv::cuda::device::bindTexture<float>(const textureReference *,const cv::cuda::PtrStepSz<float> &)' being compiled
1>   Creating library G:/Lib/build/opencv/lib/Release/opencv_cudaoptflow451.lib and object G:/Lib/build/opencv/lib/Release/opencv_cudaoptflow451.exp
1>nvidiaOpticalFlow.obj : error LNK2019: unresolved external symbol "void __cdecl cv::cuda::device::optflow_nvidia::FlowUpsample(void *,unsigned int,unsigned int,unsigned int,void *,unsigned int,unsigned int,unsigned int,unsigned int)" (?FlowUpsample@optflow_nvidia@device@cuda@cv@@YAXPEAXIII0IIII@Z) referenced in function "public: virtual void __cdecl `anonymous namespace'::NvidiaOpticalFlowImpl_2::calc(class cv::_InputArray const &,class cv::_InputArray const &,class cv::_InputOutputArray const &,class cv::cuda::Stream &,class cv::_InputArray const &,class cv::_OutputArray const &)" (?calc@NvidiaOpticalFlowImpl_2@?A0xf83298cd@@UEAAXAEBV_InputArray@cv@@0AEBV_InputOutputArray@4@AEAVStream@cuda@4@0AEBV_OutputArray@4@@Z)
1>G:\Lib\build\opencv\bin\Release\opencv_cudaoptflow451.dll : fatal error LNK1120: 1 unresolved externals
1>Done building project "opencv_cudaoptflow.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

What's wrong ? @tomoaki0705 @vchiluka5

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions