树莓派编译opencv,关于99%卡死的解决方法

用树莓派3b编译opencv4.1.0

1.添加树莓派的swap交换区和扩展sd卡

我是直接使用sd卡进行系统烧录镜像的,不用扩展sd卡,容量显示正确,但是为了防止编译卡死,要添加树莓派的swap交换分区,编辑dphys-swapfile文件,

 nano /etc/dphys-swapfile

将conf_swapsize 的值修改成你想要的大小,以mb为单位,设置为2G大小,保存之后,重启dphys-swapfile服务

sudo /etc/init.d/dphys-swapfile restart

最后查看交换空间的大小

free -m

2.下载和编译opencv

具体编译过程查看下面这篇文章:

编译过程

3.编译报错

报了两次文件缺失的错误,排错的方法参考下面这篇文章:
文件缺失报错解决方法

4.编译过程

编译的过程时间非常长,可以用make -j4来加速进行编译,但是用多线程来进行编译的时候,前期编译速度很快,但是到大概到70%的时候,编译的速度就越来越慢,一晚上只编译了5%!!!,早上醒来的时候,还卡在99%!!!,没办法我只好Ctrl+C中断之后重新编译,但还是卡在99%,我觉得有些奇怪,就打开了htop查看一下进程的信息,发现编译的进程根本就没有再运行,cpu的占用率也不太正确。进程的状态是D,查了一下之后得知,D状态表示进程正在不可中断的等待状态,我只好再次重新编译,但是这次我没有使用多进程进行编译,只用了make命令,果然正常了。

make -j4

在这里插入图片描述
等了半个小时左右终于编译成功了,泪流满面啊!!
在这里插入图片描述
来一张显示图片的灰度的图片吧
在这里插入图片描述
参考链接
树莓派swap交换分区的修改方法

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值