Jetson Xavier NX编译OpenCV4.5.2提示缺少sys/videoio.h如何解决?
该错误是编译OpenCV时缺失v4l相关依赖包导致的,按以下步骤解决即可:
解决步骤
- 第一步:安装缺失的依赖包,执行命令:
sudo apt update && sudo apt install -y libv4l-dev v4l-utils
- 依赖安装完成后,完全清空
opencv/build目录下的所有内容,重新运行你的cmake编译命令,绝大多数情况下该错误可直接解决。
如果执行完上述操作仍然报错,可任选以下一种方案处理:
方案1:调整cmake参数
在你原有cmake参数的末尾新增两个配置项即可:
-D WITH_V4L=ON \ -D CMAKE_CXX_FLAGS="-I/usr/include/libv4l"
修改完成后清空build目录重新编译。
方案2:手动创建头文件软链接
如果系统已存在对应头文件仅路径不匹配,执行以下命令创建软链接:
sudo ln -s /usr/include/linux/videoio.h /usr/include/sys/videoio.h
创建完成后重新编译即可。
注意事项
- 不要使用sudo执行cmake命令,否则命令中的
whoami会被解析为root,导致Python路径配置错误。 - 你设置的
CUDA_ARCH_BIN="7.2"完全匹配Jetson Xavier NX的架构,无需修改。
内容的提问来源于stack exchange,提问作者Tshu Shi
相关产品推荐
相关产品推荐

