openwrt编译和开发过程中经常要添加自己的程序进去,一般都是放在package路径下,但是编译调试的时候每次都要make整个固件,特别麻烦,偶尔发现了有人说可以单独编译package下的程序,就像这样:
make package/xxxxx/compile V=99
xxxxx就是你需要单独编译的程序。编译完成后去bin/ramips/packages里面找到对应的ipk,上传到板子,opkg install就可以了。
文:如何编译自己需要的 OpenWrt 固件
注意:
- 不要用 root 用户 git 和编译!!!
- 国内用户编译前最好准备好梯子
- 默认登陆IP 192.168.1.1, 密码 password
编译命令如下:
- 首先装好 Ubuntu 64bit,推荐 Ubuntu 18 LTS x64
-
命令行输入
sudo apt-get update
,然后输入sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync
- 使用
git clone https://github.com/coolsnowwolf/lede
命令下载好源代码,然后cd lede
进入目录 -
./scripts/feeds update -a ./scripts/feeds install -a make menuconfig
make -j8 download V=s
下载dl库(国内请尽量全局科学上网)- 输入
make -j1 V=s
(-j1 后面是线程数。第一次编译推荐用单线程)即可开始编译你要的固件了。
本套代码保证肯定可以编译成功。里面包括了 R20 所有源代码,包括 IPK 的。
你可以自由使用,但源码编译二次发布请注明我的 GitHub 仓库链接。谢谢合作!
二次编译:
cd lede
git pull
./scripts/feeds update -a && ./scripts/feeds install -a
make defconfig
make -j8 download
make -j$(($(nproc) + 1)) V=s
如果需要重新配置:
rm -rf ./tmp && rm -rf .config
make menuconfig
make -j$(($(nproc) + 1)) V=s
编译完成后输出路径:/lede/bin/targets
最新评论