2025-11-06 11:25:15 +08:00
2025-10-24 22:23:43 +08:00
2025-11-06 11:10:54 +08:00
2025-09-25 15:21:31 +08:00
2025-11-06 11:25:15 +08:00
2025-09-25 16:36:43 +08:00
2025-09-25 01:26:00 +08:00
2025-10-02 13:14:46 +00:00

QuickWrt - OpenWRT 快速构建系统

OpenWRT Version License Platform

一个高度优化的 OpenWRT 自动化构建系统,支持快速编译和定制化固件生成。

🌟 特性

  • 快速构建: 支持预编译工具链加速,大幅缩短编译时间
  • 多架构支持: 支持 x86_64 和 Rockchip 架构
  • 智能缓存: 工具链缓存机制,避免重复编译
  • 自动化流程: 一键式构建,简化复杂配置过程
  • 定制化配置: 集成 ImmortalWRT 组件,增强设备兼容性
  • 安全可靠: 严格的错误处理和验证机制

📋 系统要求

硬件要求

  • 内存: 至少 8GB RAM推荐 16GB+
  • 存储: 至少 100GB 可用空间
  • CPU: 多核心处理器(核心数越多,编译越快)

软件要求

操作系统: Ubuntu 20.04+ / Debian 11+ / CentOS 8+

依赖包: 确保安装以下软件包:

  • 推荐 Debian 或 Ubuntu LTS:
    sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
    bzip2 ccache clang cmake cpio curl device-tree-compiler flex gawk gcc-multilib g++-multilib gettext \
    genisoimage git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev \
    libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libpython3-dev \
    libreadline-dev libssl-dev libtool llvm lrzsz msmtp ninja-build p7zip p7zip-full patch pkgconf \
    python3 python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion \
    swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
    

🚀 使用方法

方法一 (克隆本仓库执行编译脚本)

# 克隆本仓库并加入
git clone https://github.com/QuickWrt/QuickWrt.git && cd QuickWrt

# 基本用法
bash build.sh <version> <architecture> [build_mode]

# 示例:构建 x86_64 架构的 v24 版本,使用加速模式
bash build.sh v24 x86_64 accelerated

# 示例:构建 Rockchip 架构的 v24 版本,使用普通模式
bash build.sh v24 rockchip normal

# 示例:仅编译工具链(用于缓存)
bash build.sh v24 x86_64 toolchain-only

方法二 (使用一键编译脚本)

# 主链接
bash <(curl -fsSL https://tinyurl.com/QuickWrt-install)

# 备用链接
bash <(curl -fsSL https://is.gd/QuickWrt_install)

参数说明

参数 必选 说明 可选值
version OpenWRT 版本 v24 (当前支持)
architecture 目标架构 x86_64, rockchip
build_mode 编译模式 accelerated, normal, toolchain-only

编译模式说明

  • accelerated: 下载预编译工具链,编译速度最快(推荐)
  • normal: 完整编译所有组件,包括工具链
  • toolchain-only: 仅编译工具链,用于创建本地缓存

📁 项目结构

QuickWrt/
├── build.sh                 # 主构建脚本
├── scripts/                 # 构建子脚本
│   ├── 00-prepare_base.sh
│   ├── 01-prepare_package.sh
│   ├── 02-x86_64_target_only.sh
│   └── 02-rockchip_target_only.sh
├── OpenBox/                 # 定制化配置和软件包
│   ├── Config/
│   │   ├── X86_64.config
│   │   └── Rockchip.config
│   └── key.tar.gz
└── README.md

🔧 架构支持详情

x86_64 架构

  • 目标设备: 标准 x86_64 硬件、虚拟机、软路由
  • 特性: 通用 x86 优化,支持大多数 x86 网卡和硬件

Rockchip 架构

  • 目标设备: Rockchip 系列开发板RK3568、RK3588 等)
  • 特性: 集成 ImmortalWRT 组件,增强设备兼容性

⚙️ 高级配置

自定义软件包

构建系统会自动集成 OpenBox 仓库中的定制化软件包。要添加自定义软件包:

  1. 将软件包放入 OpenBox/package/ 目录
  2. 在对应的配置文件中启用相关选项
  3. 重新执行构建脚本

网络配置

构建过程中需要访问以下资源:

  • GitHub (源码仓库)
  • OpenWRT 官方源
  • 自定义镜像源(用于加速下载)

代理设置(如需要)

如果网络环境需要代理,请设置环境变量:

export http_proxy=http://your-proxy:port
export https_proxy=http://your-proxy:port

🛠️ 故障排除

常见问题

  • Q: 构建过程中出现权限错误

    # 解决方案:确保以正确用户运行
    sudo chown -R $USER:$USER .
    
  • Q: 内存不足导致编译失败

    # 解决方案:增加交换空间或减少编译线程数
    export CPU_CORES=$(($(nproc) / 2))  # 使用一半核心数
    
  • Q: 网络下载失败

    # 解决方案:检查网络连接或使用代理
    export CURL_OPTIONS="--retry 3 --retry-delay 5"
    

日志文件

构建过程中会生成详细的日志:

  • 主要日志输出到终端
  • 详细错误信息可在 openwrt/tmp/ 目录下找到

📊 性能对比

模式 预计时间 磁盘占用 推荐场景
accelerated 2-3小时 较大 快速部署、日常使用
normal 2-4小时 较大 完全自定义、调试
toolchain-only 30-60分钟 较大 创建缓存、多设备编译

🤝 贡献指南

我们欢迎各种形式的贡献!请参考以下步骤:

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

代码规范

  • 使用清晰的注释说明复杂逻辑
  • 保持 Bash 脚本的兼容性和可读性
  • 添加适当的错误处理机制

📄 许可证

本项目基于 GPLv3 许可证发布 - 查看 LICENSE 文件了解详情。

🙏 致谢

  • OpenWRT - 优秀的开源路由器系统
  • ImmortalWRT - 提供增强的 Rockchip 支持
  • 所有为项目做出贡献的开发者

📞 支持与联系

注意: 本项目仍在积极开发中API 和功能可能会有变动。建议定期拉取最新版本获取更新和改进。

如果这个项目对你有帮助,请给我们一个 Star

Description
一个高度优化的OpenWRT自动化构建系统,支持快速编译和定制化固件生成
Readme GPL-3.0 398 KiB
Languages
Shell 100%