OpenWrt 固件编译教程

本文档详述了如何在阿里云Ubuntu环境下准备编译环境、首次及二次编译OpenWrt固件的具体步骤,包括安装依赖、更新软件源、自定义配置等内容。

一、编译环境准备

编译平台 阿里云 Ubuntu 20.04.5 LTS

安装编译环境依赖

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

更新本地软件包

sudo sh -c "apt update && apt upgrade -y"

不推荐使用 root 用户进行编译,所以先使用 root 权限创建一个用户,以创建 gaven 用户为例

# 添加用户
adduser gaven

为新用户设置密码,根据个人情况,这里设置“123456”

passwd 123456

从 root 用户切换使用新用户

su gaven

从此刻开始,以非 root 用户执行编译过程的所有操作。

<
### 自定义编译 OpenWRT 固件教程 #### 准备工作环境 为了准备编译环境,在本地计算机上安装必要的依赖项是必需的操作。对于大多数Linux发行版来说,可以通过包管理器来完成这一步骤。例如在Debian或Ubuntu系统中可以运行如下命令: ```bash sudo apt-get update && sudo apt-get install build-essential libncurses5-dev zlib1g-dev gawk gcc-multilib flex quilt libssl-dev libc6-dev-i386 subversion git gettext unzip ncurses-term automake autoconf file bison texinfo wget python2.7-pip python2.7-setuptools python2.7-dev python3-pip python3-setuptools python3-dev libtool-bin p7zip-full patchelf help2man liblzma-dev ccache rsync screen vim nano htop curl jq time rename lsb-release ``` #### 获取源代码 创建一个新的目录作为工作空间,并从中克隆所需的OpenWrt仓库[^5]。 ```bash mkdir ~/openwrt_build cd ~/openwrt_build git clone git://github.com/openwrt/openwrt.git cd openwrt ``` #### 更新 feeds 并安装所需软件包 更新feeds列表并将它们下载到本地缓存中以便后续使用这些库构建目标镜像或其他组件。 ```bash ./scripts/feeds update -a ./scripts/feeds install -a ``` #### 配置内核选项 进入图形化配置界面调整想要加入的支持特性或是移除不必要的部分以减小最终输出大小;也可以直接加载预设好的.config文件来进行更精细控制。 ```bash make menuconfig # 或者复制已有的 .config 文件 cp /path/to/existing/.config ./ && make defconfig ``` #### 开始编译过程 利用多线程加速整个流程,如果遇到错误则尝试降低并行度直至成功为止。这里`nproc`会自动检测CPU核心数从而最大化效率[^4]。 ```bash make -j$(nproc) || make -j1 || make -j1 V=s ``` #### 编译完成后获取固件 一旦编译结束,生成的二进制文件将会位于`bin/targets/<target>/<subtarget>/`路径下等待部署测试。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值