【调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包】

作者 : admin 本文共1639个字,预计阅读时间需要5分钟 发布时间: 2024-06-3 共2人阅读

调试笔记-系列文章目录

调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包


文章目录

  • 调试笔记-系列文章目录
    • 调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包
  • 前言
  • 一、调试环境
    • 操作系统:Windows 10 专业版
    • 调试环境
    • 调试目标
  • 二、调试步骤
    • 获取 ipkg-build 脚本
    • 准备安装包目录
    • 调试脚本
  • 三、应用场景
    • 在 OpenWrt 运行环境中打包配置安装包
  • 四、参考资料
  • 总结

前言

本文记录在 OpenWrt-23.05 发行版本上使用 ipkg-build 脚本生成 .ipk 安装包的步骤。

实验使用的电脑如下:

CPU:

Intel Core i5 8265U

操作系统:

Microsoft Windows 10  Professional (x64), Version 22H2, Build 19045.4412

一、调试环境


操作系统:Windows 10 专业版

操作系统详细信息如下:

Microsoft Windows 10  Professional (x64), Version 22H2, Build 19045.4412

调试环境

  • Windows 系统已安装 QEMU 并成功运行 OpenWrt 发行版

参考【安装笔记-20240520-Windows-在 QEMU 中尝试运行 OpenWRT】


调试目标

在 OpenWrt-23.05 发行版上不安装 SDK ,通过脚本生成 .ipk 安装包。


二、调试步骤

获取 ipkg-build 脚本

1、下载 OpenWrt-23.05 的 SDK

2、解压后在 scripts/ 目录中有 ipkg-build 脚本

3、复制 ipkg-build 脚本到 OpenWrt-23.05 的运行环境中

准备安装包目录

1、在 /tmp 目录中创建测试用的安装包目录 /tmp/foo ,执行以下命令

mkdir -p /tmp/foo/bin
cp foo /tmp/foo/bin
mkdir -p /tmp/foo/CONTROL
cat >/tmp/foo/CONTROL/control <<EOF
Package: foo
Version: 0.1
Architecture: mipsel
Maintainer: foo bar 
Section: base
Priority: optional
Description: This package provides foo, which does nothing.
Source: http://foo.bar/foo
EOF

2、尝试创建目标 .ipk 安装包

./ipkg-build -o root -g root /tmp/foo /tmp

显示出错

【调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包】插图

调试脚本

1、去掉 -o 和 -g 参数后继续执行

./ipkg-build /tmp/foo /tmp

显示出错信息:

./ipkg-build: line 128: realpath: not found

2、查找并安装 realpath 命令的安装包

opkg update
opkg install coreutils-realpath

3、继续执行命令

./ipkg-build /tmp/foo /tmp

显示出错信息:

/bin/tar: unrecognized option: format=gnu

4、查找并安装全功能版本的 tar 命令的安装包

opkg update
opkg install tar

5、继续执行命令

./ipkg-build /tmp/foo /tmp

显示出错信息:

./ipkg-build: line 184: stat: not found

6、查找并安装全功能版本的 stat 命令的安装包

opkg update
opkg install coreutils-stat

7、继续执行命令

./ipkg-build /tmp/foo /tmp

显示成功

【调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包】插图(1)


三、应用场景

在 OpenWrt 运行环境中打包配置安装包


四、参考资料

1、[Howto] build your own iPKG packages


总结

本文记录在 OpenWrt-23.05 发行版本上使用 ipkg-build 脚本生成 .ipk 安装包的步骤,并给出了所遇到问题的解决方法。

本站无任何商业行为
个人在线分享 » 【调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包】
E-->