关于树莓派编译工作空间卡死情况的解决办法

Posted vcan123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于树莓派编译工作空间卡死情况的解决办法相关的知识,希望对你有一定的参考价值。

我用的是买树莓派时官方带的SD卡16G,安装的时xubuntu桌面版。感觉运行还是比较流畅的,之前安装过ubuntu-mate、kubuntu、lubuntu。只有xubuntu是比较喜欢的。

在我安好之后,马上安装了ros-melodic-desktop-full完整版的ros。

问题:

在我对我github拉下来的激光雷达测试的包进行catkin_make的时候总是出现卡死。屏幕完全不受控制,重启之后仍然如此。总是卡在66%。

解决方法:

第一步:确保系统中有足够的空间来用做swap交换空间,我准备在一个独立的文件系统中添加一个swap交换文件,在/opt/image中添加2G的swap交换文件。

  1 sudo mkdir image
  2 sudo touch swap

第二步:添加交换文件并设置其大小为2G,使用如下命令

  1 sudo dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000

之后会返回结果:

2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB, 2.0 GiB) copied, 242.095 s, 8.7 MB/s

注意:此过程等待时间有点长,不要以为是树莓派死机了。

第三步:创建(设置)交换空间,使用命令mkswap。

  1 sudo mkswap /opt/image/swap

返回结果:

Setting up swapspace version 1, size = 2 GiB (2097147904 bytes)

第四步:检查现有的交换空间大小,使用命令free。

  1 free -m

返回结果:

              total        used        free      shared  buff/cache   available
Mem:            925         185          28          14         711         660
Swap:             0           0           0

或者检查meminfo文件:

  1 grep SwapTotal  /proc/meminfo

第五步:启动新增加的2G的交换空间,使用命令swapon。

  1 sudo swapon /opt/image/swap

第六步:确认新增加的2G交换空间已经生效,使用命令free。

  1 free -m

返回:

             total        used        free      shared  buff/cache   available
Mem:            925         328          56          32         541         502
Swap:          1999           0        1999

或者检查meminfo文件

  1 grep SwapTotal  /proc/meminfo
第七步:修改/etc/fstab文件,使得新加的2G交换空间在系统重新启动后自动生效。
  1 sudo vim /etc/fstab
在文件最后加入:
  1 /opt/image/swap    /swap    swap    defaults 0 0

重启之后在编译就会成功了。

以上是关于关于树莓派编译工作空间卡死情况的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

树莓派关于树莓派掉电问题

树莓派学习——树莓派安装系统的过程问题及解决办法

树莓派无法登陆SSH解决办法

树莓派更新以后pi账户无法登陆密码都是默认的,求切实可行的解决办法

交叉编译C++树莓派标准错误

树莓派VNC出现cannot currently show the desktop 解决办法