Differences
This shows you the differences between two versions of the page.
| — |
kiwi:build [2026/02/02 16:02] (current) augustas.p created |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ===== Build Firmware ===== | ||
| + | To build firmware you need **Ubuntu 20.04 LTS**, other distributions may work but are not supported. Building firmware directly on a Windows platform is not supported. However, if all you have available is a Windows machine then we would recommend to set up a Linux based virtual machine. | ||
| + | |||
| + | //Note: the following build was made on Ubuntu 20.04.6 LTS running 6.17 kernel.// | ||
| + | |||
| + | //Note: please build with non-root privileges!// | ||
| + | |||
| + | ---- | ||
| + | |||
| + | Once you have a Linux OS running prepare the building environment based on OpenWrt instructions: https://openwrt.org/docs/guide-developer/toolchain/install-buildsystem | ||
| + | |||
| + | \\ | ||
| + | Get latest sources from the official OpenWrt upstream branch and checkout to the commit with the Kiwi/DVK support: | ||
| + | |||
| + | git clone https://github.com/openwrt/openwrt.git | ||
| + | cd openwrt | ||
| + | git checkout d324d6f07e687c3d89b0737bef091f9e1d151486 | ||
| + | | ||
| + | |||
| + | \\ | ||
| + | Then update and install all the necessary feeds, if wanted - modify the FW and proceed to build the firmware: | ||
| + | |||
| + | ./scripts/feeds udpdate -a | ||
| + | ./scripts/feeds install -a | ||
| + | make menuconfig | ||
| + | make defconfig download clean world -j16 | ||
| + | |||
| + | \\ | ||
| + | Building is a CPU heavy process and may take a long time depending on your CPU capabilities. | ||
| + | |||
| + | Once finished the compiled firmware will be named ''openwrt-qualcommbe-ipq95xx-8devices_kiwi-dvk-squashfs-<factory OR sysupgrade>.bin'' and will be placed under ''./bin/targets/qualcommbe/ipq95xx'' directory. | ||
| + | |||
| + | \\ | ||
| + | Both images are used to upgrade the FW, except *factory* image is used with TFTP server if the previously flashed FW is different than official OpenWrt. | ||