下载和编译
以下文档基于ubuntu22.04描述.
环境准备
安装依赖
sudo apt install build-essential clang flex bison g++ gawk \
gcc-multilib g++-multilib gettext git libncurses-dev libssl-dev \
python3-distutils rsync unzip zlib1g-dev file wget jq device-tree-compiler
下载代码
代码仓库分为bl-v1.0.y,bl-v2.0.y两个分支,分别对应linux-6.1、linux-6.6。后续主要维护bl-v2.0.y分支。
git clone https://gitee.com/bianbu-linux/openwrt.git -b bl-v2.0.y
拉取feeds
首次或想更新包时需要运行以下命令。更新包会从openwrt官网等下载压缩包,请确保网络可用。如果出现某些包下载失败,可重复执行命令
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -f -p spacemit_openwrt_feeds -a
./scripts/feeds install -a
固件编译
以下编译命令的可选参数V=s
为输出详细日志。目前提供两种方案的编译启动。
SBC方案
cp feeds/spacemit_openwrt_feeds/spacemit_k1_defconfig .config
make -j12 V=s
固件位于bin/targets/spacemit/DEVICE_debX/*.zip
NAS方案
cp feeds/spacemit_openwrt_feeds/spacemit_k1_nas_defconfig .config
make -j12 V=s
固件位于bin/targets/spacemit/DEVICE_MUSE-N1/*.zip
清理
- 全部清理命令,会把
bin、build_dir、staging_dir、feeds、dl
等目录以及.config
文件都删掉,代码仓库为最原始的状态
make distclean
- 局部清理命令,会把编译输出目录
bin、build_dir、staging_dir
删掉,不包含dl目录、.config
文件等
make dirclean
单包编译
单编uboot
- 编译
make package/boot/uboot-spacemit/compile V=s
- 清理
make package/boot/uboot-spacemit/clean V=s
单编opensbi
- 编译
make package/boot/opensbi-spacemit/compile V=s
- 清理
make package/boot/opensbi-spacemit/clean V=s
单编linux
- 编译
make target/linux/compile V=s
- 清理
make target/linux/clean V=s
单编adb包
其他包的编译都类似一下的编译方式
- 编译
make package/utils/adb/compile V=s
- 清理
make package/utils/adb/clean V=s
烧写
固件*.zip,使用Titan Flasher工具刷写至设备 板载存储介质,刷机工具使用参考刷机工具使用
固件*sdcard.img,可使用dd命令写至卡上,设备插卡上电即可实现卡启动
支持设备列表
SBC 方案
- BPI-F3
- MUSE-Pi
NAS 方案
- MUSE-N1
软路由
在以上支持设备列表的板型默认开启软路由功能。系统开机后默认开启WiFi AP模式,其中:
SBC方案有线网卡eth1为lan口,eth2为wan
NAS方案有线网卡2.5G为wan,其它两个千兆口为lan
- 热点名称:openWRT-AP
- 热点密码:12345678
- WiFi网关:192.168.1.1