gpt4 book ai didi

c++ - 安装了两个 OpenCV(不同版本),我无法删除过去一个的所有痕迹

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:26:21 25 4
gpt4 key购买 nike

我是 Linux 系统的新手,但我的项目确实需要它,所以我真的需要你的帮助。

事情是这样的:我在 Linux 系统上安装了 OpenCV 2.4,我还安装了另一个名为 libv4l 的库。出于某种原因,此安装后,cmake 无法找到 OpenCv。所以我这次安装了OpenCV 3.0,希望是兼容性问题什么的。

然而,OpenCV 2.4 默认安装在/usr/lib(我使用 cmake、make、make install),而 OpenCV 3.0 安装在/usr/local/lib。

现在,当我尝试 cmake 时,我收到此警告:

Cannot generate a safe runtime search path for target <projectname>
because files in some directories may conflict with libraries in
implicit directories:
...list of files that exist both in usr/lib and usr/local/lib

当我忽略警告并继续 make 时,我收到以下错误:

No rule to make target <an opencv file> 

我的CMakeLists如下:

cmake_minimum_required (version 2.8)
project(camera_test)

find_package(OpenCV 3.0.0) #also tried without 3.0.0
set(CMAKE_MODULE_PATH "usr/local/lib/cmake/${CMAKE_MODULE_PATH}")
find_package(raspicam REQUIRED)
target_link_libraries (camera_test ${raspicam_LIBS})
target_link_libraries (camera_test ${opencv_LIBS})

我认为我的问题与以下页面相同:

Removing all installed OpenCV libs

http://answers.opencv.org/question/52921/how-to-uninstall-opencv249-completely-in-ubuntu-1404/

然而,这是最后的收获:

我为 openCV 3.0 做了“make uninstall”,然后使用

sudo find / -name "*opencv*" -exec rm {} \;

并重新安装openCV 3.0

但它并没有解决我的问题。它仍然认为 usr/lib 中有文件,尽管我再也找不到任何文件了。

请给我一个解决方案,如果你能简单地告诉我这件事的逻辑,我将不胜感激。我的意思是,它怎么知道在 usr/lib 中安装了 opencv,我留下了什么痕迹?在这种情况下,我需要查找/执行哪些基本文件/命令。

非常感谢,非常感谢您的帮助。

编辑:这是完整的 CMakeLists 文件:

cmake_minimum_required (VERSION 2.8)
project (raspicam_test)

find_package(OpenCV 3.0.0)
set(CMAKE_MODULE_PATH “/usr/local/lib/cmake/${CMAKE_MODULE_PATH}”)
find_package(raspicam REQUIRED)

IF ( OpenCV_FOUND AND raspicam_CV_FOUND )
MESSAGE(STATUS “COMPILING OPENCV TESTS”)
add_executable (simpletest_raspicam_cv simpletest_raspicam_cv.cpp)
target_link_libraries (simpletest_raspicam_cv ${raspicam_CV_LIBS} )
target_link_libraries (simpletest_raspicam_cv ${OpenCV_LIBS})
ELSE()
MESSAGE(FATAL_ERROR “OPENCV NOT FOUND IN YOUR SYSTEM”)
ENDIF()

最佳答案

可能的原因:

sudo find / -name "*opencv*" -exec rm {} \;

不会删除目录。但是里面有一些cmake文件

/usr/share/opencv

因此不会被删除,其中包含您之前安装的 OpenCV 的弃用信息。

你能检查一下你的文件系统中是否存在这些文件吗?

关于c++ - 安装了两个 OpenCV(不同版本),我无法删除过去一个的所有痕迹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34374868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com