如何使用树莓派3B+固件编译LEDE

本篇文章给大家分享的是有关如何使用树莓派3B+固件编译LEDE,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

网上的固件用着总有问题,这里自己编译一个,记录一下过程和遇到的问题。

  1. g++: internal compiler error: Killed (program cc1plus)

  2. checking whether mknod can create fifo without root privileges

  3. 提示编译时间差异问题

 【1】首先准备环境和依赖

sudo apt update && sudo apt upgrade

sudo apt -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex node-uglify gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx-ucl libelf-dev autoconf automake libtool autopoint gcc g++ cmake vim wget ntp ntpdate

【2】编译

从这里向后,全程不需要root用户或者sudo

#下载源码
git clone https://github.com/coolsnowwolf/lede

cd ~/lede

#更新依赖源

./scripts/feeds update -a && ./scripts/feeds install -a

#进入配置界面

make menuconfig

这里 git 、 更新依赖源 和 后边的编译下载过程 都需要良好快速的网络环境哈,自己想办法。

【3】配置

参考 https://openwrt.club/1.html

【4】编译

#下载编译用到的东西,会非常多非常慢
make download V=s

这一段过程可能会遇到上边的问题0.2和0.3,解决办法分别是

0.2解决:checking whether mknod can create fifo without root privileges 不要用root用户或者sudo方式使用make相关命令, 添加环境变量export FORCE_UNSAFE_CONFIGURE=1  参考https://github.com/coolsnowwolf/lede/issues/200

0.3解决:安装ntpdate来同步时间,sudo apt-get install ntp ntpdate , sudo ntpdate ntp1.aliyun.com

#开始正式编译系统,单线程模式
make V=s -j1

这里可能会遇到好多问题,比如上边提到的问题0.1,解决办法是:

0.1解决:g++: internal compiler error: Killed (program cc1plus) 这个出现是内存不足,编译过程需要大量内存,我的机器只有512M内存,所以可以添加swap空间来解决之。参考https://www.cnblogs.com/liqinggai/articles/9023333.html

添加swap:
1. 创建分区文件, 大小 2G
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
2. 生成 swap 文件系统
sudo mkswap /swapfile
3. 激活 swap 文件
sudo swapon /swapfile
4.之后可以删除
sudo rm /swapfile

大功告成,编译完成的固件在 ~/lede/bin/targets/brcm2708/bcm2710

以上就是如何使用树莓派3B+固件编译LEDE,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/206637.html

(0)
上一篇 2021年12月3日
下一篇 2021年12月3日

相关推荐

发表回复

登录后才能评论