Openwrt编译教程
注意:
- 不要用 root 用户进行编译
- 国内用户编译前最好准备好梯子
- 默认登陆IP 192.168.1.1 密码 password
编译命令:
- 首先装好 Linux 系统,推荐 Debian 11 或 Ubuntu LTS
- 安装编译依赖
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-pyelftools \
libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip \
vim wget xmlto xxd zlib1g-dev python3-setuptools
- 下载源代码,更新 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 #此处-j后面的线程数不用改
原则上电脑核心数加1可以最大效率的执行编译,请根据实际情况选择
make V=s -j1 #第一次编译推荐用单线程
- 二次编译:
cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)
- 如果需要重新配置:
rm -rf ./tmp && rm -rf .config
make menuconfig
make V=s -j$(nproc)
编译完成后输出路径:home/用户名/lede/bin/targets
下载到本地电脑,需要通过SSH远程登录进行下载。ubuntu默认是没开通SSH登录,所以我们需要进行开通。
开通SSH登录方法:
- 必须切换成为root用户
sudo -i
- 先更新软件列表和更新软件
sudo apt-get update
- 先更新软件列表和更新软件
sudo apt-get upgrade
- 安装ssh
apt-get install ssh
- 启动ssh服务
sudo /etc/init.d/ssh start
- 检查是否有ssh环境
ps -e | grep ssh
ubuntu开通root登录SSH权限:
- 使用普通用户登录后切换root
sudo -i
- 创建root管理员密码
passwd root
- 开启root登录
sudo sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
- 开启密码验证
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config
- 重启ssh服务
service sshd restart
- 检查是否有ssh环境通过以下命令:
ps -e | grep ssh