Skip to content

G-API build issue with VC 2019 #15065

@rkcarroll

Description

@rkcarroll
System information (version)
  • OpenCV => :4.11:
  • Operating System / Platform => :Windows 64 Bit:
  • Compiler => :Visual Studio 2019:
Detailed description

I pulled down latest from GitHub today (7/16/2019) and did a new build. The opencv_gapi module failed to compile. I was able to get it to compile by creating a Move constructor for GFluidExecutable in gfluidbackend.hpp where the m_agents vector is moved and not copied. I am not including my code as a fix because I am not familiar enough with the semantics of the class to know that my implementation is correct.

Steps to reproduce

Pull latest from GitHub
Configure and Generate VS2019 solution
Batch Build ALL_BUILD project(s)

Error Output
1>    gfluidbackend.cpp
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory0(820,1): error C2280:  'std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>::unique_ptr(const std::unique_ptr<_Ty,std::default_delete<_Ty>> &)': attempting to reference a deleted function
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory0(820,1): error C2280:         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory0(820,1): error C2280:         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory0(820,1): error C2280:             _Ty=cv::gimpl::FluidAgent
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory0(820,1): error C2280:         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898): message :  see declaration of 'std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>::unique_ptr'
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898): message :             _Ty=cv::gimpl::FluidAgent
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898,5): message :  'std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>::unique_ptr(const std::unique_ptr<_Ty,std::default_delete<_Ty>> &)': function was explicitly deleted
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898,5): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898,5): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898,5): message :             _Ty=cv::gimpl::FluidAgent
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\memory(1898,5): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :  see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,_Ty&>(_Alloc &,_Objty *const ,_Ty &)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Alloc=std::allocator<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Ty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Objty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :  see reference to function template instantiation 'void std::_Default_allocator_traits<_Alloc>::construct<_Ty,_Ty&>(_Alloc &,_Objty *const ,_Ty &)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Alloc=std::allocator<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Ty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :             _Objty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(142): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :  see reference to function template instantiation 'void std::_Uninitialized_backout_al<_Ty *,_Alloc>::_Emplace_back<_Ty&>(_Ty &)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :             _Ty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :             _Alloc=std::allocator<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>>
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :  see reference to function template instantiation 'void std::_Uninitialized_backout_al<_Ty *,_Alloc>::_Emplace_back<_Ty&>(_Ty &)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :             _Ty=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :             _Alloc=std::allocator<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>>
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\xmemory(173): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :  see reference to function template instantiation '_NoThrowFwdIt *std::_Uninitialized_copy<_Iter,std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>*,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>(const _InIt,const _InIt,_NoThrowFwdIt,_Alloc &)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :             _NoThrowFwdIt=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>> *,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :             _Iter=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>> *,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :             _Ty=cv::gimpl::FluidAgent,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :             _InIt=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>> *,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :             _Alloc=std::allocator<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>>>
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(1558): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :  see reference to function template instantiation 'std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>> *std::vector<std::unique_ptr<_Ty,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>::_Ucopy<std::unique_ptr<_Ty,std::default_delete<_Ty>>*>(_Iter,_Iter,std::unique_ptr<_Ty,std::default_delete<_Ty>> *)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :             _Ty=cv::gimpl::FluidAgent,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :             _Iter=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>> *
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :  see reference to function template instantiation 'std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>> *std::vector<std::unique_ptr<_Ty,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>::_Ucopy<std::unique_ptr<_Ty,std::default_delete<_Ty>>*>(_Iter,_Iter,std::unique_ptr<_Ty,std::default_delete<_Ty>> *)' being compiled
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :             _Ty=cv::gimpl::FluidAgent,
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :             _Iter=std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<cv::gimpl::FluidAgent>> *
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(470): message :         ]
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(458): message :  while compiling class template member function 'std::vector<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>::vector(const std::vector<std::unique_ptr<_Ty,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>> &)'
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(458): message :         with
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(458): message :         [
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(458): message :             _Ty=cv::gimpl::FluidAgent
1>    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.21.27702\include\vector(458): message :         ]
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends\fluid\gfluidbackend.cpp(1575): message :  see reference to function template instantiation 'std::vector<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>::vector(const std::vector<std::unique_ptr<_Ty,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>> &)' being compiled
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends\fluid\gfluidbackend.cpp(1575): message :         with
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends\fluid\gfluidbackend.cpp(1575): message :         [
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends\fluid\gfluidbackend.cpp(1575): message :             _Ty=cv::gimpl::FluidAgent
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends\fluid\gfluidbackend.cpp(1575): message :         ]
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends/fluid/gfluidbackend.hpp(124): message :  see reference to class template instantiation 'std::vector<std::unique_ptr<cv::gimpl::FluidAgent,std::default_delete<_Ty>>,std::allocator<std::unique_ptr<_Ty,std::default_delete<_Ty>>>>' being compiled
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends/fluid/gfluidbackend.hpp(124): message :         with
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends/fluid/gfluidbackend.hpp(124): message :         [
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends/fluid/gfluidbackend.hpp(124): message :             _Ty=cv::gimpl::FluidAgent
1>    E:\Libs\opencv4_github\opencv\modules\gapi\src\backends/fluid/gfluidbackend.hpp(124): message :         ]
1>    The command exited with code 2.
1>  Done executing task "CL" -- FAILED.
1>Done building target "ClCompile" in project "opencv_gapi.vcxproj" -- FAILED.
1>
1>Done building project "opencv_gapi.vcxproj" -- FAILED.
1>
1>Build FAILED.


Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions