OpenHarmony开发者论坛
标题:
OpenHarmony-V4.0 release OTA差分包制作脚本卡住不动,制作失败。
[打印本页]
作者:
yjka
时间:
2023-11-17 20:25
标题:
OpenHarmony-V4.0 release OTA差分包制作脚本卡住不动,制作失败。
本帖最后由 yeyao 于 2023-11-23 16:51 编辑
[md]> 本帖最后由 yjka 于 2023-11-22 18:18 编辑
### 【问题描述】
1. packaging_tools 目录下执行下面命令:
`python build_update.py ./target_package/ ./output_package/ -s ./source_package.zip -pk ./rsa_private_key2048.pem`
2. 命令执行后窗口打印下图,卡着很久没有生成差分包,可以看到后台diff在运行,但是运行了一夜一直没有结果。
![image.png](
https://forums-obs.openharmony.c ... vyakkvrdzmkkdk8.png
"image.png")
![](
https://static.dingtalk.com/medi ... XkCmAA_1310_406.png
)
### 【运行环境】
* packagint_tools目录配置如下:
.
├── LICENSE
├── OAT.xml
├── README.md
├── README_zh.md
├── __pycache__
│ ├── blocks_manager.cpython-38.pyc
│ ├── build_pkcs7.cpython-38.pyc
│ ├── create_hashdata.cpython-38.pyc
│ ├── create_signed_data.cpython-38.pyc
│ ├── create_update_package.cpython-38.pyc
│ ├── gigraph_process.cpython-38.pyc
│ ├── image_class.cpython-38.pyc
│ ├── log_exception.cpython-38.pyc
│ ├── patch_package_process.cpython-38.pyc
│ ├── script_generator.cpython-38.pyc
│ ├── transfers_manager.cpython-38.pyc
│ ├── unpack_updater_package.cpython-38.pyc
│ ├── update_package.cpython-38.pyc
│ ├── utils.cpython-38.pyc
│ └── vendor_script.cpython-38.pyc
├── blocks_manager.py
├── build_hmp.py
├── build_module_img.py
├── build_module_package.py
├── build_pkcs7.py
├── build_update.py
├── code_yacc.py
├── create_hashdata.py
├── create_signed_data.py
├── create_update_package.py
├── digest
├── gigraph_process.py
├── image_class.py
├── lib
│ ├── diff
│ ├── e2fsdroid
│ ├── libext2_com_err.so
│ ├── libext2_misc.so
│ └── libext2fs.so
├── log_exception.py
├── output_package
│ └── updater_full.zip
├── patch_package_process.py
├── rsa_private_key2048.pem
├── script_generator.py
├── sign_cert
│ └── signing_cert.crt
├── signature
├── source_package.zip
├── target_package
│ ├── MiniLoaderAll.bin
│ ├── boot_linux.img
│ ├── boot_linux_hdmi.img
│ ├── boot_linux_mipi.img
│ ├── chip_prod.img
│ ├── config.cfg
│ ├── eng_system.img
│ ├── parameter.txt
│ ├── ramdisk.img
│ ├── resource_hdmi.img
│ ├── resource_mipi.img
│ ├── sys_prod.img
│ ├── system.img
│ ├── uboot.img
│ ├── updater.img
│ ├── updater_binary
│ ├── updater_config
│ │ ├── BOARD.list
│ │ ├── VERSION.mbn
│ │ └── updater_specified_config.xml
│ ├── userdata.img
│ └── vendor.img
├── test
│ ├── __init__.py
│ ├── create_package_data.py
│ ├── fake_data.py
│ ├── source_vendor_data
│ ├── target_vendor_data
│ ├── test_build_update.py
│ ├── test_image_class.py
│ ├── test_inc.py
│ ├── test_log_exception.py
│ ├── test_script_generator.py
│ ├── test_update_package.py
│ ├── test_utils.py
│ └── test_vendor_script.py
├── transfers_manager.py
├── unpack_updater_package.py
├── update_package.py
├── utils.py
├── vendor_script.py
└── zipalign
├── BUILD.gn
├── build
│ └── META-INF
│ └── MANIFEST.MF
├── build_jar.py
└── src
└── main
└── java
└── com
└── ohos
└── ZipAlign.java
* target_package/updater_config/BOARD.list内容
```
HI3516
RK3568
```
* target_package/updater_config/VERSION.mbn内容
```
OpenHarmony 4.0.10.14
```
* target_package/updater_config/updater_specified_config.xml内容
```
<?xml version="1.0"?>
<package>
<head name="Component header information">
<info fileVersion="01" prdID="RK3568" softVersion="4.0.10.14" date="2023-11-17" time="12:30">head info</info>
</head>
<group name = "Component information">
<component compAddr="vendor" compId="12" resType="05" compType="1" compVer="1.0">./vendor.img</component>
<component compAddr="system" compId="18" resType="05" compType="1" compVer="1.0">./system.img</component>
</group>
</package>
```
* source_package.zip 中的版本号是OpenHarmony 4.0.10.13
全量包可以正常制作和升级,差分包一直 卡在这,该如何处理?
### 问题更新
以上问题是由于e2fsprogs内的e2fsdroid引起的,比较简单的解决方法是找一个合适的e2fsdroid。
经测试使用Android12 编译的e2fsdroid和e2fsck(位于out\soong\host\linux-x86\bin目录下)替换Packaging_tools/lib/下面的这两个文件后可以编译出差分包且升级成功。
Android12 e2fsprogs版本为v1.45.4
OpenHarmony e2fsprogs版本为v1.46.4
Android12下v1.45.4的e2fsdroid和e2fsck库文件:![lib.zip](
https://forums-obs.openharmony.cn/forum/
"lib.zip")
lib目录如下:
.
├── diff
├── e2fsck
├── e2fsdroid
├── libext2_blkid.so
├── libext2_com_err.so
├── libext2_e2p.so
├── libext2_misc.so
├── libext2_quota.so
├── libext2_uuid.so
├── libext2fs.so
└── mke2fs
升级日志:![updater_log.txt](
https://forums-obs.openharmony.cn/forum/
"updater_log.txt")
[/md]
作者:
martinhu
时间:
2023-11-20 16:10
[md]我也遇到了相同问题😕 ,蹲个后续结果
[/md]
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5