C++ 两个OpenCV';安装了(不同版本),我可以';不要删除过去的所有痕迹

C++ 两个OpenCV';安装了(不同版本),我可以';不要删除过去的所有痕迹,c++,linux,opencv,cmake,uninstallation,C++,Linux,Opencv,Cmake,Uninstallation,我是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 现在,当我尝试制作时,我得到以下警

我是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

现在,当我尝试制作时,我得到以下警告:

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
我认为我的问题与以下页面相同:

然而,最后一个问题是:

我为openCV 3.0做了“卸载”,然后使用

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安装中不推荐的信息

能否检查文件系统中是否存在这些文件?

可能的原因:

sudo find / -name "*opencv*" -exec rm {} \;
不会删除目录。但是有一些cmake文件在

/usr/share/opencv
因此不会被删除,其中包含以前OpenCV安装中不推荐的信息


您可以检查文件系统中是否存在这些文件吗?

您可以添加您的CMakeLists.txt吗?刚才添加了(由于我使用的设备目前没有internet连接,所以必须从屏幕手动键入,因此如果我遗漏了任何输入错误,这不是原因)建议将
CMAKE_PREFIX_PATH
设置为
/usr/local/lib
CMAKE\u MODULE\u PATH
仅在模块模式(
findOpenCV.CMAKE
)下影响查找包的行为,这是系统范围的文件,但在您的情况下是配置模式,这是每个安装一个。我刚刚做了CMAKE-D CMAKE\u PREFIX\u PATH=usr/local。。现在更糟了。Cmake不再工作了。当我做。。我没有当前的工作目录,被中止。你能添加你的CMakeLists.txt吗?刚刚添加(由于我使用的设备目前没有互联网连接,所以必须从屏幕手动键入,因此如果我遗漏了任何输入错误,这不是原因)建议将
CMAKE\u PREFIX\u路径
设置为
/usr/local/lib
CMAKE\u MODULE\u PATH
仅在模块模式(
findOpenCV.CMAKE
)下影响查找包的行为,这是系统范围的文件,但在您的情况下是配置模式,这是每个安装一个。我刚刚做了CMAKE-D CMAKE\u PREFIX\u PATH=usr/local。。现在更糟了。Cmake不再工作了。当我做。。我没有得到当前的工作目录,已中止。在/usr/share/opencv中没有这样的文件夹,但在/usr/local/share/opencv中有一个(3.0安装在local,所以我认为应该有一个)在/usr/share/opencv中没有这样的文件夹,但在/usr/local/share/opencv中有一个(3.0安装在local,所以我认为应该有一个)