cmake错误'源代码似乎不包含CMakeLists.txt'

KVS*_*KVS 11 python opencv

我在ubuntu 16.04中安装opencv.安装必要的先决条件后,我使用以下命令: -

kvs@Hunter:~/opencv_contrib$ mkdir build
kvs@Hunter:~/opencv_contrib$ cd build
kvs@Hunter:~/opencv_contrib/build$ 
kvs@Hunter:~/opencv_contrib/build$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX+/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules -D BUILD_EXAMPLES=ON ..
Run Code Online (Sandbox Code Playgroud)

但它产生了一个错误: -

CMake Error: The source directory "/home/kvs/opencv_contrib" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
Run Code Online (Sandbox Code Playgroud)

我使用了'module'文件夹中提供的命令.我该如何解决?我在堆栈溢出和其他一些问题尝试了答案,但仍然无法弄明白.

Project Git存储库在这里.

Qua*_*ang 19

你应该做的mkdir buildcd build而里面opencv的文件夹,而不是opencv-contrib文件夹.该CMakeLists.txt是存在的.


K. *_*bol 7

由于您是..在cmake之后添加的,因此它将cd ..在目录中向上和向上跳跃(就像一样)。但是,如果要在与CMakeLists.txt相同的文件夹下运行cmake,请使用.代替..


小智 7

此回复可能较晚,但可以帮助遇到类似问题的用户。opencv-contrib(可从https://github.com/opencv/opencv_contrib/releases 获得)包含额外的模块,但构建过程必须从核心 opencv 完成(可从https://github.com/opencv/opencv 获得) /releases ) 模块。

按照以下步骤操作(假设您使用 CMake GUI 构建它)

  1. 下载 openCV(从https://github.com/opencv/opencv/releases)并将其解压缩到您计算机上的某个位置。在其中创建构建文件夹

  2. 从 OpenCV 下载 exra 模块。(来自https://github.com/opencv/opencv_contrib/releases)。确保您下载相同的版本。

  3. 解压文件夹。

  4. 打开 CMake

  5. 单击浏览源并导航到您的 openCV 文件夹。

  6. 单击浏览构建并导航到您的构建文件夹。

  7. 单击配置按钮。系统会询问您希望如何生成文件。从下拉菜单中选择 Unix-Makefile,然后单击 OK。CMake 将执行一些测试并返回一组出现在 CMake 窗口中的红色框。

  8. 搜索“OPENCV_EXTRA_MODULES_PATH”并提供模块文件夹的路径(例如/Users/purushottam_d/Programs/OpenCV3_4_5_contrib/modules)

  9. 再次单击配置,然后单击生成。

  10. 转到构建文件夹

# cd build
# make
# sudo make install
Run Code Online (Sandbox Code Playgroud)
  1. 这将在您的计算机上安装 opencv 库。