Advanced build options
Build faster
Build using several cores make -j(n+1) where n=#CPUs
, For example:
make -j4
Manual build
If you are rebuilding OpenWrt often, or don't want to use build.sh script, you can build manually.
First time building or when you want your feeds updated, run:
./scripts/feeds update -a ./scripts/feeds install -a
To set config to defaults:
git checkout .config
Then finally build:
make IGNORE_ERRORS=m
Customize your build
Run this after you updated your feeds:
make menuconfig
to configure OpenWrt according your needs.
You should see configuration window like this:
Build custom image without compiling
If you need firmware image that contains packages that are not in default image, but available in pkg.8devices.com repository - use Image Builder. No cross-compiling is required so build process is fast.
This example uses v2.9 release, use latest available when building.
wget "http://pkg.8devices.com/rambutan/v2.9/OpenWrt-8devices-ImageBuilder-v2.9-ar71xx-nand.Linux-x86_64.tar.bz2" tar -xjvf OpenWrt-8devices-ImageBuilder-v2.9-ar71xx-nand.Linux-x86_64.tar.bz2 cd OpenWrt-8devices-ImageBuilder-v2.9-ar71xx-nand.Linux-x86_64/
This adds luci tmux kmod-fs-ntfs
packages, contents of files/
directory to image and removes ppp ppp-mod-pppoe kmod-pppoe kmod-pppox
packages that are in default image:
make image PROFILE=RAMBUTAN PACKAGES="luci tmux kmod-fs-ntfs -ppp -ppp-mod-pppoe -kmod-pppoe -kmod-pppox" FILES=files/
Image will be available in bin/ar71xx
folder.
More info: https://wiki.openwrt.org/doc/howto/obtain.firmware.generate
Build more packages
Use full config to build all packages available at pkg.8devices.com
cp config_full .config make defconfig make IGNORE_ERRORS=m
More details
If there something goes wrong, this make argument outputs more details.
make V=sc