您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何使用樹莓派3B+固件編譯LEDE,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
網上的固件用著總有問題,這里自己編譯一個,記錄一下過程和遇到的問題。
g++: internal compiler error: Killed (program cc1plus)
checking whether mknod can create fifo without root privileges
提示編譯時間差異問題
【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,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。