Build problem win 64 Visual Studio 2013 (v120) opencv 3.0.0 when BUILD_opencv_world:BOOL=ON (Bug #4316)
Description
Hallo.
I get linking errors when compiling with BUILD_opencv_world:BOOL=ON:
Error 1 error LNK2019: unresolved external symbol "int __cdecl cv::hal::LU(double *,unsigned __int64,int,double *,unsigned __int64,int)" (?LU@hal@cv
@YAHPEAN_KH01H@Z) referenced in function "public: bool __cdecl cv::internal::Matx_FastInvOp<double,4>::operator()(class cv::Matx<double,4,4> const &,class cv::Matx<double,4,4> &,int)const " (??R?$Matx_FastInvOp@N$03@internal@cv@QEBA_NAEBV?$Matx@N$03$03@2@AEAV32@H@Z) C:\OpenCV\opencv\build\modules\world\test_affine3.obj opencv_test_calib3d
@YA_NPEAN_KH01H@Z) referenced in function "public: bool __cdecl cv::internal::Matx_FastInvOp<double,4>::operator()(class cv::Matx<double,4,4> const &,class cv::Matx<double,4,4> &,int)const " (??R?$Matx_FastInvOp@N$03@internal@cv@
Error 2 error LNK2019: unresolved external symbol "bool __cdecl cv::hal::Cholesky(double *,unsigned __int64,int,double *,unsigned __int64,int)" (?Cholesky@hal@cvQEBA_NAEBV?$Matx@N$03$03@2@AEAV32@H@Z) C:\OpenCV\opencv\build\modules\world\test_affine3.obj opencv_test_calib3d
@YAHPEAM_KH01H@Z) referenced in function "public: double __cdecl cv::internal::Matx_DetOp<float,4>::operator()(class cv::Matx<float,4,4> const &)const " (??R?$Matx_DetOp@M$03@internal@cv@
Error 3 error LNK1120: 2 unresolved externals C:\OpenCV\opencv\build\bin\Release\opencv_test_calib3d.exe 1 1 opencv_test_calib3d
Error 4 error LNK2019: unresolved external symbol "int __cdecl cv::hal::LU(float *,unsigned __int64,int,float *,unsigned __int64,int)" (?LU@hal@cvQEBANAEBV?$Matx@M$03$03@2
@Z) C:\OpenCV\opencv\build\modules\world\test_operations.obj opencv_test_core
Error 5 error LNK1120: 1 unresolved externals C:\OpenCV\opencv\build\bin\Release\opencv_test_core.exe opencv_test_core
@
but if I disable BUILD_opencv_world, I do not get these link errors.
$ git log
commit e01b485ac65c72ae5fdf4631fb18cb3d4c3ce910 Merge: 07e0765 5e44aa3 Author: Roman Donchenko <[email protected]> Date: Thu Apr 30 12:48:50 2015 +0000
History
Updated by Ilya Lavrenov almost 10 years ago
- Assignee changed from Roman Donchenko to Alexander Alekhin
Updated by Pavel Vlasov almost 10 years ago
It is dangerous to go alone, take this:
diff --git a/modules/hal/CMakeLists.txt b/modules/hal/CMakeLists.txt
index b5b2abb81e67848576d017f920531ea54c42a6c8..a0a7ee02fd311c3e924a5b242909a1b323c6849e 100644
--- a/modules/hal/CMakeLists.txt
+++ b/modules/hal/CMakeLists.txt@ -1,7 +1,7
@
set(the_description "The Hardware Acceleration Layer (HAL) module")
set(OPENCV_MODULE_TYPE STATIC)
-# set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
+set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
if(UNIX)
if(CMAKE_COMPILER_IS_GNUCXX OR CV_ICC)
Updated by Maksim Shabunin almost 10 years ago
Should be fixed here: https://github.com/Itseez/opencv/pull/4048
- Status changed from New to Done
- Pull request set to https://github.com/Itseez/opencv/pull/4048