- 以 IPQ5018 Qualcomm-Atheros 高通创锐讯 为例。
- github openwrt: 最新 v22.03.2。
- QSDK @CodeLinaro Wiki: Qualcomm Atheros 芯片组,OpenWrt 构建。
- 仓库 QSDK;
- 编译必要的工具
'Target System', 'Subtarget' and 'Target Profile'. 也就是设备型号的基本参数。
Package architecture: 比如 mips_24kc
export PATH=/home/openwrt/source/staging_dir/host/bin:$PATH
: 编译完毕,所需要的 target-independent tools 工具在 staging_dir/host/bin 下,请 export
到 PATH
变量以方便使用。同时编译出的 toolchain 部署在 staging_dir/toolchain/
下。
-
Toolchain
-
Cross compiling:请仔细学习。
staging_dir/toolchain-architecture_gcc-compilerver_uClibc-libcver/bin/
-
Cross compiling:请仔细学习。
- Linkers and Loaders 初学笔记 @Yuan Jianpeng,他的文章都不错,条理清晰、叙述简洁,感觉所有文章都可以读一读。
- openwrt target 分析;
Board/Subtarget/Profile
BOARD: SOC的名字,target/linux/${BOARD},是BOARD所在的目录。配置文件中的配置项: CONFIG_TARGET_BOARD。比如ramips。
SUBTARGET: 子类型,配置项 CONFIG_TARGET_SUBTARGET。
PROFILE: 具体的一个机型,配置项 CONFIG_TARGET_PROFILE。
示例
make menuconfig
From the menu, choose the suitable 'Target System', 'Subtarget' and 'Target Profile'.
The author of this article targets the P2812HNU-F1 router model, manufactured by Zyxel, and as such,
chooses 'Lantiq', 'XRX200' and 'P2812HNU-F1' as the corresponding values.
WiFi Router: ZyXEL P-2812HNU-F1:
-
/home/openwrt/source/staging_dir/toolchain-mips_24kc_gcc-11.2.0_musl
: 这里的 openwrt 对应官网 doc 的 buildbot。
WiFi Router: PHICOMM K2T;
- QSDK;