【问题标题】:How to build opencv samples如何构建 opencv 示例
【发布时间】:2020-04-10 19:42:19
【问题描述】:

我是 cmake 的新手,虽然不是 make。这个问题与Could not build OpenCV Android sample project 不同,因为另一个问题是关于单个项目的,而这个问题正在查看overall CMakeLists.txt

说到这:考虑${OPENCVDIR}/samples中的CMakeLists.txt

我遵循cmake的基本流程:

cd  "${OPENCVDIR}/samples"
mkdir build
cd build
cmake ..

但在最后一步我有:

$ cmake ..
CMake Error at CMakeLists.txt:72 (find_package):
  Could not find a package configuration file provided by "OpenCV" with any
  of the following names:

    OpenCVConfig.cmake
    opencv-config.cmake

  Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set
  "OpenCV_DIR" to a directory containing one of the above files.  If "OpenCV"
  provides a separate development package or SDK, be sure it has been
  installed.


-- Configuring incomplete, errors occurred!
See also "/git/opencv/samples/CMakeFiles/CMakeOutput.log".

第 72 行有这个:find_package(OpenCV REQUIRED PATHS "..")

我查看了错误日志,但没有提供任何信息。

Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"

The CXX compiler identification is GNU, found in "/git/opencv/samples/CMakeFiles/3.13.4/CompilerIdCXX/a.out"

Determining if the C compiler works passed with the following output:
Change Dir: /git/opencv/samples/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_26f76/fast"
/usr/bin/make -f CMakeFiles/cmTC_26f76.dir/build.make CMakeFiles/cmTC_26f76.dir/build
make[1]: Entering directory '/git/opencv/samples/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_26f76.dir/testCCompiler.c.o
/usr/bin/cc    -o CMakeFiles/cmTC_26f76.dir/testCCompiler.c.o   -c /git/opencv/samples/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_26f76
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_26f76.dir/link.txt --verbose=1
/usr/bin/cc      -rdynamic CMakeFiles/cmTC_26f76.dir/testCCompiler.c.o  -o cmTC_26f76
make[1]: Leaving directory '/git/opencv/samples/CMakeFiles/CMakeTmp'


Detecting C compiler ABI info compiled with the following output:
"/git/opencv/samples/CMakeFiles/CMakeOutput.log" 706 lines, 48095 characters
    Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers
    Feature record: CXX_FEATURE:0cxx_delegating_constructors
    Feature record: CXX_FEATURE:0cxx_deleted_functions
    Feature record: CXX_FEATURE:0cxx_digit_separators
    Feature record: CXX_FEATURE:0cxx_enum_forward_declarations
    Feature record: CXX_FEATURE:0cxx_explicit_conversions
    Feature record: CXX_FEATURE:0cxx_extended_friend_declar
   etc ..

构建这些示例的正确方法是什么 - 希望使用已经提供的 CMakeLists.txt

【问题讨论】:

    标签: opencv cmake


    【解决方案1】:

    cmake似乎找不到OpenCV的安装目录。尝试通过参数提供值:

    cmake -DCMAKE_PREFIX_PATH=/home/someone/src/opencv/install ..
    

    如果它有效,您可以在顶级 CMakeLitst.txt 中定义它:

    list(APPEND CMAKE_PREFIX_PATH /home/someone/src/opencv/install)
    

    这应该为 CMake 提供它应该寻找的地方。

    【讨论】:

      猜你喜欢
      • 2012-09-10
      • 2014-03-19
      • 2013-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-07
      • 1970-01-01
      相关资源
      最近更新 更多