简单的记录一下如何在 CentOs 下编译 OpenWrt 固件
编译前准备
- 安装必要的工具包 - yum groupinstall "Development Tools"
- yum install autoconf binutils bison bzip2 flex gawk gcc gcc-c++ gettext make ncurses-devel patch unzip wget zlib-devel
 
- 下载源代码 (最新的是 LEDE) - git clone https://git.lede-project.org/source.git lede
 
- 进入目录 下载扩展 - cd lede
- ./scripts/feeds update -a
- ./scripts/feeds install -a
 
配置编译参数
- 清理编译(如果是第一次编译可以忽略) - make clean
 
- 生成默认配置 - make defconfig
 
- 打开配置菜单 配置编译参数 - make menuconfig
 
开始编译
- 执行编译- make V=99
 
- 编译结束后文件生成在 bin目录下
编译错误解决
如果遇到
gconvert.c:61:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv
- 编译 iconvlib- cd build_dir/host/pkg-config-0.29.1/glib/
- ./configure --enable-iconv=no --with-libiconv=gnu