无法在 C++ 中运行 OpenCV 的任何内容

问题描述 投票:0回答:1

我已经在 python 中使用 opencv 一段时间了(在 venv 中),我必须尝试 C++ 中的 opencv 来实现功能。但是,我似乎无法运行任何东西。

做了什么

我尝试手动安装opencv(4.9.0)

  1. 我下载了 OpenCV 的包,成功构建了它并运行了
    sudo make install
  2. 我验证了我有一些更改的文件(
    local/lib
    有一些libopencv,
    local/include
    有opencv4和opencv2目录,一些有关opencv的cmake文件在
    local/lib/cmake/opencv
    (2或4)中。
  3. 我将下载的构建包放入我的项目中的
    thirdparty
    文件夹下(即使知道它不会改变太多)
  4. 我尝试使用
    find_package
    ,使用
    set
  5. 手动将目录设置为opencv
  6. 完成所有这些操作后,运行
    cmake
    make
    不会崩溃,但运行可执行文件会崩溃。

我尝试通过 apt get 安装 opencv

  1. 我做了
    sudo apt-get install -y libopencv-dev
    ,还安装了
    libgtk2.0-dev
    pkg-config
  2. 我继续从 opencv 获取/运行教程 cpp 文件和 cmakelist 文件。
  3. 我收到一个很好的错误,如下所示:
terminate called after throwing an instance of 'cv::Exception'
  what():  OpenCV(4.9.0) /home/some_username/Downloads/opencv-4.9.0/modules/highgui/src/window.cpp:1255: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvNamedWindow'
  1. 我确实安装了以上所有内容,重新启动后没有任何变化。

唯一有效的是我不使用 Gui。不过我想用它。

我没有提供我的 cmakefile,因为我放入其中的任何内容都不会改变输出一点点,即使它是 opencv 教程中的 makefile。

我猜测这是某种依赖/库问题,但我真的不知道我必须再去哪里寻找。我已经尝试使用单个库运行单个教程文件两天了,C++ 让我很失望。

我希望得到一些帮助,因为精力和耐心都在耗尽。

c++ linux opencv cmake compiler-errors
1个回答
0
投票

您可以使用以下方式安装它,而不是从源代码安装:

sudo apt install libopencv-dev python3-opencv

这应该允许您使用 CMake 调用

find_package
并成功找到并使用
OpenCV

© www.soinside.com 2019 - 2024. All rights reserved.