跳转至

编译

使用Lede编译

Lean 的 Openwrt 源码仓库

编译步骤

# 注意
# 不要用 root 用户进行编译
# 国内用户编译前最好准备好梯子
# 默认登陆IP 192.168.1.1 密码 password

# 编译命令

# 首先装好 Linux 系统,推荐Debian 11

# 安装依赖
sudo apt update -y
sudo apt full-upgrade -y

sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \
libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \
mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pip libpython3-dev qemu-utils \
rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev

# 下载源代码,更新 feeds 并选择配置
git clone https://github.com/coolsnowwolf/lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig

# 下载 dl 库,编译固件 (-j 后面是线程数,第一次编译推荐用单线程)
make download -j8
make V=s -j1

# 如果需要重新配置:
make dirclean
rm -rf ./tmp && rm -rf .config
make menuconfig
make download -j8 V=s
make V=s -j$(nproc)

个性化操作

修改处理器

# Target System (x86) —> 根据处理器选择(默认x86,intel处理器默认x86)
# Subtarget (x64 64bit) —> 默认x64位
# Target Images —> 固件启动方式和格式

# 编译树莓派固件
# Target System 选择BCM27xx
# 树莓派 1B    bcm27xx/bcm2708 
# 树莓派 2B    bcm27xx/bcm2709 
# 树莓派 3B    bcm27xx/bcm2710 
# 树莓派 4B    bcm27xx/bcm2711 
# Target Images 选择需要的

基础设置

# Base system,如果需要DHCPv6服务,则需要在dnsmasq-full下方选中Build with DHCPv6 support
# LuCI-Themes 设置主题
# LuCI-Applications 设置插件

修改固件IP

# 将默认的 192.168.1.1 更改为所需要的 IP
cd /lede
nano package/base-files/files/bin/config_generate

sed -i 's/192.168.1.1/192.168.79.132/g' package/base-files/files/bin/config_generate

sed -i 's/192.168.1.1/192.168.300.1/g' package/base-files/files/bin/config_generate

添加新的软件包

# 先cd进package目录,然后执行
git clone https://github.com/kenzok8/small-package
git clone https://github.com/kenzok8/openwrt-packages

# 在feeds.conf.default文件中添加
src-git small8 https://github.com/kenzok8/small-package
src-git lienol https://github.com/xiaorouji/openwrt-passwall
src-git kenzo https://github.com/kenzok8/openwrt-packages