ipk包是opkg使用的安装包.
我正在尝试提取其中一个的内容,并创建我自己的ipk.
我读过我应该能够解开他们,但事实并非如此.
我试过了:
tar -zxvf mypack.ipk
Run Code Online (Sandbox Code Playgroud)
我得到:
zip: stdin: not in gzip format
我也尝试过:
tar -xvf mypack.ipk
Run Code Online (Sandbox Code Playgroud)
我得到:
tar: This does not look like a tar archive
我发现互联网上关于ipk的大部分信息都是不准确的.
我的ipk是由bitbake生成的.我在使用bitbake时遇到了困难,并希望避免使用它.
关于如何提取以及如何创建ipk文件的任何想法?具有单个包的简单模板将是有用的.
Mar*_*ata 20
您需要创建一个control文件,然后使用tar和进行一些归档ar.就我而言,我只分发python脚本,因此没有架构依赖.您应该检查control并Makefile进入版本控制,并删除所有其他中间文件.
这是内容 control
Package: my-thing-python Version: 1.0 Description: python scripts for MyCompany Section: extras Priority: optional Maintainer: John License: CLOSED Architecture: all OE: my-thing-python Homepage: unknown Depends: python python-distutils python-pyserial python-curses python-mmap python-ctypes Source: N/A
这是我的Makefile所有python脚本所在的目录.
all: my-thing-python.ipk
my-thing-python.ipk:
rm -rf ipk
mkdir -p ipk/opt/my-thing-python
cp *.py ipk/opt/my-thing-python
tar czvf control.tar.gz control
cd ipk; tar czvf ../data.tar.gz .; cd ..
echo 2.0 > debian-binary
ar r my-thing-python.ipk control.tar.gz data.tar.gz debian-binary
clean: FORCE
rm -rf ipk
rm -f control.tar.gz
rm -f data.tar.gz
rm -f my-thing-python.ipk
FORCE:
小智 8
我已经测试了“ ar x package-name.ipk”命令,但没有帮助
我发现波纹管命令效果很好
tar zxpvf package-name.ipk
这将提取三个文件:
debian-binary
data.tar.gz
control.tar.gz
使用相同的命令打开data.tar.gz和control.tar.gz文件
有关更多信息,请参阅 https://cognito.me.uk/computers/manual-extractioninstallation-of-ipk-packages-on-gargoyleopenwrt/
使用以下命令提取:
通过运行以下命令来提取文件:
ar -xv <.ipk file>
Run Code Online (Sandbox Code Playgroud)通过运行以下命令来提取control.tar.gz文件:
tar -zxvf control.tar.gz
Run Code Online (Sandbox Code Playgroud)data.tar.gz:通过运行以下命令解压缩:
tar –zxvf data.tar.gz
Run Code Online (Sandbox Code Playgroud)