Ubuntu环境下执行make -j6编译安装OpenCV时缺失webp/decode.h头文件的错误求助
解决Ubuntu编译OpenCV时
webp/decode.h缺失的问题 你在编译OpenCV时碰到的这个错误,核心原因是系统缺少WebP格式的开发依赖库——OpenCV的imgcodecs模块需要它来处理WebP图片,编译时找不到对应的头文件就会报错。下面是具体的解决步骤:
第一步:安装WebP开发依赖
打开终端,执行以下命令安装WebP的开发包:
sudo apt-get update && sudo apt-get install libwebp-dev
第二步:重新配置并编译OpenCV
回到你之前创建的OpenCV build目录,重新运行CMake配置(如果你之前已经配置过,这一步会自动检测到新安装的依赖):
cd /path/to/your/opencv/build cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ..
配置完成后,重新执行编译命令:
make -j$(nproc)
这里用$(nproc)可以自动匹配你的CPU核心数,比手动写-j6更适配不同的硬件。
附:你遇到的错误日志
Consolidate compiler generated dependencies of target ittnotify [ 28%] Built target ittnotify Consolidate compiler generated dependencies of target IlmImf Consolidate compiler generated dependencies of target libprotobuf Consolidate compiler generated dependencies of target opencv_core [ 28%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o [ 28%] Built target IlmImf [ 28%] Built target libprotobuf [ 28%] Linking CXX shared library ../../lib/libopencv_core.so [ 28%] Built target opencv_core Consolidate compiler generated dependencies of target opencv_flann [ 28%] Linking CXX shared library ../../lib/libopencv_flann.so Consolidate compiler generated dependencies of target opencv_ml [ 28%] Linking CXX shared library ../../lib/libopencv_ml.so Consolidate compiler generated dependencies of target opencv_imgproc [ 28%] Linking CXX shared library ../../lib/libopencv_imgproc.so [ 28%] Built target opencv_flann [ 28%] Built target opencv_ml [ 28%] Built target opencv_imgproc Consolidate compiler generated dependencies of target opencv_objdetect [ 28%] Linking CXX shared library ../../lib/libopencv_objdetect.so Consolidate compiler generated dependencies of target opencv_video [ 28%] Linking CXX shared library ../../lib/libopencv_video.so Consolidate compiler generated dependencies of target opencv_photo Consolidate compiler generated dependencies of target opencv_imgcodecs [ 28%] Linking CXX shared library ../../lib/libopencv_photo.so Consolidate compiler generated dependencies of target opencv_dnn [ 28%] Building CXX object modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_webp.cpp.o [ 28%] Building CXX object modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/rgbe.cpp.o [ 28%] Linking CXX shared library ../../lib/libopencv_dnn.so /home/user/opencv/modules/imgcodecs/src/grfmt_webp.cpp:47:10: fatal error: webp/decode.h: No such file or directory #include <webp/decode.h> ^~~~~~~~~~~~~~~ compilation terminated. modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/build.make:285: recipe for target 'modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_webp.cpp.o' failed make[2]: *** [modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/src/grfmt_webp.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... [ 28%] Built target opencv_video [ 28%] Built target opencv_objdetect Consolidate compiler generated dependencies of target opencv_shape [ 28%] Linking CXX shared library ../../lib/libopencv_shape.so [ 28%] Built target opencv_photo [ 28%] Built target opencv_shape CMakeFiles/Makefile2:2256: recipe for target 'modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/all' failed make[1]: *** [modules/imgcodecs/CMakeFiles/opencv_imgcodecs.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [ 28%] Built target opencv_dnn Makefile:165: recipe for target 'all' failed make: *** [all] Error 2
内容的提问来源于stack exchange,提问作者hosna
相关产品推荐
相关产品推荐

