cannot find -lopencv_dep_cudart

来源:互联网 发布:java并发编程艺术 pdf 编辑:程序博客网 时间:2024/06/05 20:47

170121更新:

刚才编译opencv2.4.13,之后编译该程序时,提示:

cannot find -lopencv_dep_cudart

https://github.com/opencv/opencv/issues/6542中指出,在cmake时,加上-D CUDA_USE_STATIC_CUDA_RUNTIME=OFF(开始我以为是编译opencv时候加上这句,结果编译这个测试程序还是有问题。后来才意识到,是编译这个测试程序时加上这句才对。)

另一种解决方法就是,如http://stackoverflow.com/questions/41608111/cannot-find-lib-libopencv-dep-cudart中指出的,在上面的CMakeLists.txt中find_package(OpenCV REQUIRED)之前加上:

set(CUDA_USE_STATIC_CUDA_RUNTIME OFF)

之后按照后续的继续编译,也可以成功。

http://code.opencv.org/issues/2166中指出,由于gpumat (.hpp, .cpp)在revision #6957已经被移到opencv_core中,因而编译OpenCV with CUDA enabled时,即便工程不使用cuda,每个工程仍旧需要npp (npp32_42_9.dll, 50MB) 和 cudart (cudart32_42_9.dll) dll(这个应该是windows上面的,linux应该就是so了),