天天看点

树莓派上编译安装realsense经验关闭交换分区(var文件夹下有个swapfile文件,其内部跟swap相连。因为带了路径,所以在当前用户目录下运行即可)新建 1GB 的 swap 空间=bs*count接着修改权限(可能不修改也行):开启交换分区(必须开启才能有效)此时可以编译realsense了!已下内容不重要,可忽略:

1.树莓派系统一定要用realsense官方指定的ubuntu mate,树莓派B3+只能装18.0.4,树莓派B3和以前的只能装16.0.4

2.不要妄想装realsense的非编译版本(官网说打包好的dpkg,那是针对ubuntu电脑板的,需要arm64位CPU硬件的)到树莓派,树莓派的CPU硬件是armhf,需要从新在上边编译安装(cmake,make && make install)。

3.树莓派默认分配给系统的内存只有1个G,在realsense编译(make)时根本不够用,过程中,系统会强制杀死编译进程导致失败,需要在闪存卡上建立虚拟内存。ubuntu mate操作如下(其它版本好像有两种办法,也可以这样,也可以用修改/etc/dphys-swapfile文件中的CONF_SWAPSIZE的办法,但ubuntu mate只能如下):

关闭交换分区(var文件夹下有个swapfile文件,其内部跟swap相连。因为带了路径,所以在当前用户目录下运行即可)

sudo swapoff /var/swap 或者这句 sudo swapoff /var/swapfile

新建 1GB 的 swap 空间=bs*count

sudo dd if=/dev/zero of=/var/swapfile bs=1M count=1024 (这句比较耗时,十几分钟,耐心等待)

sudo mkswap /var/swapfile (格式化)

检查格式化成功没,使用free命令,

输入:free -m

输出内容如下:

total used free shared buff/cache available

Mem: 925 185 28 14 711 660

Swap: 0 0 0

Swap一行都是0,说明成功。

接着修改权限(可能不修改也行):

sudo chown root:root /var/swapfile

sudo chmod 0600 /var/swapfile

开启交换分区(必须开启才能有效)

sudo swapon /var/swapfile

查看是否建立成功,并开始运行:

free -m

输出如下:

total used free shared buff/cache available

Mem: 925 328 56 32 541 502

Swap: 1023 0 1023

Swap大小为1023,说明成功。

此时可以编译realsense了!

切记以上不要重启,否则需要再运行sudo swapon /var/swapfile 开启虚拟内存。如果想开机自动运行虚拟内存请看下面,改配置文件,我觉得没必要,需要用时开启就行,没必要霸占1G。

已下内容不重要,可忽略:

sudo nano /etc/fstab

#追加下一行内容设置自动挂载

/var/swapfile none swap defaults 0 0

#改完后需要重启后生效,为了不重启可以用下面的命令

mount -a

查看当前已生效的 swap

swapon -s

#查看当前 swap 使用情况

free -m