如何在Arch Linux上安装OpenCV

Reu*_*_v1 1 python java installation opencv

我尝试使用aur软件包在arch上安装opencv。它已成功安装,但是当我尝试在python中导入opencv2时,出现以下错误

ImportError: libhdf5.so.100: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

不只是python,即使当我尝试使用它运行c ++示例代码时,我也遇到了相同的错误。我尝试搜索网络,发现一些遇到类似问题的人,但仍然无法修复它。

我已经安装了Open CV 3.2版

Reu*_*_v1 6

我终于解决了这个问题。这是一个愚蠢的做法,但同时又令人困惑,因为有多个名称相似的软件包,但只有一个可行。此外,关于此问题的在线发布并不多,因此我发布我的解决方案,希望它可以帮助节省其他人的时间。

第1步:运行此命令(如果已安装OpenCV,则为可选)

pacman -Syu base-devel opencv opencv-samples
Run Code Online (Sandbox Code Playgroud)

第2步:只需安装此软件包

https://www.archlinux.org/packages/community/x86_64/hdf5/

做完了!


use*_*729 5

在版本 4 中,在默认配置中,编译opencv 需要hdf5和vtk,但是它没有被列为 的依赖项opencv。

这在 archlinux 页面上的两个错误中提到:1 , 2。

有两种可能的解决方法:

  1. sudo pacman -S hdf5 vtk(占用大约231.24 MiB内存)
  2. 如果您的程序不需要hdf5and vtk,请删除-lopencv_hdfand -lopencv_vizfrom /usr/lib/pkgconfig/opencv4.pc(以防程序使用pkg-config),或在编译时删除 2 个标志。

警告:如果您使用变通方法 2,opencv包的更新将恢复这些更改。您可能希望将它们添加为NoUpgrade条目pacman.conf(阅读手册页了解详细信息),但文件将不再更新并且其他内容可能会中断。