You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派3安装OpenCV遇make中断及Error 2错误,求解决方法

解决树莓派3编译OpenCV时的中断与Error 2问题

嘿,我看你在树莓派3上编译OpenCV时碰到了俩头疼的问题——编译中途中断,还有最后蹦出来的Error 2。结合树莓派3的硬件特性,我给你整理了几个靠谱的解决办法,你挨个试试:

1. 先搞清楚编译中断的原因

你第一份错误日志里有^C标记,这大概率是不小心按了Ctrl+C手动终止了编译。如果是这种情况,直接重新跑make命令就行。但如果是树莓派内存不够导致系统自动终止编译,那得做这俩优化:

  • 扩容交换分区:树莓派默认的交换分区太小,编译OpenCV很容易内存不足。扩容步骤如下:
    # 先停掉当前交换分区服务
    sudo dphys-swapfile stop
    # 打开交换分区配置文件
    sudo nano /etc/dphys-swapfile
    # 把里面的CONF_SWAPSIZE改成1024(1GB)或者2048(2GB),保存退出
    # 重新配置并启动交换服务
    sudo dphys-swapfile setup
    sudo dphys-swapfile start
    
  • 限制编译线程数:树莓派3是4核,但全核心编译会把内存占满,改成2线程编译更稳妥:
    make -j2
    

2. 搞定make: *** [Makefile:163: all] Error 2

这个错误一般是某个模块编译失败导致的,可能是依赖缺了、缓存有问题,或者编译参数不对。试试这些操作:

  • 清理编译缓存,重新配置CMake:旧的编译缓存可能残留问题,清空重来:
    # 先进入你的OpenCV编译目录
    cd your_opencv_build_dir
    # 清理之前的编译文件
    make clean
    # 删除CMake缓存文件
    rm -rf CMakeCache.txt
    
  • 检查并补全依赖:编译OpenCV需要不少基础依赖,确保都装齐了:
    sudo apt-get update && sudo apt-get install -y build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
    sudo apt-get install -y libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
    
  • 禁用不必要的测试模块:默认编译会构建测试和性能测试模块(比如你日志里的opencv_test_imgproc、opencv_perf_imgproc),这些不是必须的,禁用能大幅减少编译压力:
    cmake -D CMAKE_BUILD_TYPE=RELEASE \
          -D CMAKE_INSTALL_PREFIX=/usr/local \
          -D BUILD_TESTS=OFF \
          -D BUILD_PERF_TESTS=OFF \
          -D ENABLE_NEON=ON \
          -D ENABLE_VFPV3=ON \
          ..
    
    这里加的ENABLE_NEON和ENABLE_VFPV3是开启树莓派3的硬件加速,不管是编译还是后续运行OpenCV都更快。

3. 实在搞不定?试试预编译包

如果源码编译实在麻烦,树莓派软件源里有现成的OpenCV预编译包,安装简单还不会出编译问题:

sudo apt-get update && sudo apt-get install -y python3-opencv opencv-data

装完之后可以用这条命令验证:

python3 -c "import cv2; print(cv2.__version__)"

能输出版本号就说明成了。

内容的提问来源于stack exchange,提问作者Mạnh Lệ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:31:24