This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] SK-AM62P-LP:在 TI-AOSP-14 上 AM62P 的 OTA 更新期间缺少 apex_manifest_pb2.py 文件 (10.00.00)

Guru**** 2431040 points
Other Parts Discussed in Thread: AM62P

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1533271/sk-am62p-lp-missing-apex_manifest_pb2-py-file-during-ota-update-for-am62p-on-ti-aosp-14-10-00-00

器件型号:SK-AM62P-LP
主题:AM62P 中讨论的其他器件

工具/软件:

我尝试按照 TI 文档“应用手册 — OTA for AM62X“中的说明、通过 Update Engine 对 AM62P 电路板执行 OTA 更新。 但是、成功构建 Android 映像后、apex_manifest_pb2.py 文件丢失、这会导致在设置 PYTHONPATH 以生成 OTA 包时出现错误。

电路板: AM62P
Android 版本: TI-AOSP-14
TI Android SDK 版本: 10.00.00
参考: https://software-dl.ti.com/processor-sdk-android/esd/AM62X/10_00_00/docs/devices/AM62X/android/Application_Notes_OTA.html

所遵循的步骤

1.设置构建环境:

source build/envsetup.sh
lunch luminara_userdebug
export DIST_DIR=./dist_output


2.应用了一个补丁,使 gen_update_config.py 与 Android 兼容 14:
cd $ANDROID_BUILD_TOP/bootable/recovery
git fetch android.googlesource.com/.../recovery refs/changes/17/2837717/1
git cherry-pick FETCH_HEAD


3、构建 Android 映像和发行版:

m
m dist -j$(nproc) 2>&1 | tee build.log

附加参考 e2e.ti.com/.../4452.build.log 的日志

构建成功完成、输出文件在 dist_output 中生成

尝试为 OTA 工具设置 Python 路径:

cd $ANDROID_BUILD_TOP
apex_manifest_pb2_path=$(find out -name 'apex_manifest_pb2.py' -print -quit)
PYTHONPATH=$ANDROID_BUILD_TOP/$(dirname ${apex_manifest_pb2_path}):$PYTHONPATH


遇到错误

dirname: missing operand
Try 'dirname --help' for more information.

问题详细信息

  • “Find out -name“ Apex_manifest_PB2.py' 命令不返回任何结果、表示 th e apex_manifest_pb2.py 文件不存在于 OUT 目录或编译输出中的其他位置。

  • 我还手动搜索了 out dist_output 目录中的 apex_manifest_pb2.py、但找不到该文件。

  • OTA 软件包(例如 ota.zip)似乎在 dist_output 中生成、但由于缺少文件、我无法继续执行 OTA 过程。

在中应用了 gen_update_config.py 的补丁 可引导/恢复 如上所述、确保 Android 14 兼容性、但问题仍然存在。

补丁: Git 获取 android.googlesource.com/.../recovery refs/changes/17/2837717/1

问题

  1. 在采用 TI-AOSP-14 的 AM62P 上通过 Update Engine 进行 OTA 更新 (10.00.00) 是否需要 apex_manifest_pb2.py 文件?

  2. 如果是、为什么即使在应用 gen_update_config.py 补丁后、在编译过程中也不会生成此文件? 我是否需要包含特定的构建配置或依赖项?

  3. AM62P 电路板是否需要任何其他步骤或补丁来确保生成该文件?

如果不需要此文件、设置 PYTHONPATH 或继续进行 OTA 更新的正确过程是什么?

您能否提供有关解决缺少 apex_manifest_pb2.py 文件问题的指导? 如果这是 AM62P 的 TI-AOSP-14 (10.00.00) 的已知问题、是否有任何权变措施或其他补丁? 或者、请建议使用 Update Engine 完成 OTA 更新过程的正确步骤。

感谢您的支持!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我尝试重现您的问题、我很快会回复您。

    此致
    Guillaume

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    对于 apex_manifest_pb2.py 没有发现我有同样的问题,这是一个没有问题,事实上,文档工作与多个 python 版本和 distrib ,我有相同的你和我使用相同的操作系统你 Ubuntu 22.04,我的同事谁做 doc 使用 Fedora 和 python 3.12 看到一些问题.

    因此、文档中的步骤是可以的。
    最后、在我这边、我有 json 生成了可以执行 OTA。

    您是否尝试执行下一步并查看 OTA 是否正常工作??

    PS:在我的设置上,我需要做这个导出:  导出 PROTOCOL_BUFFERS_Python_Implementation=python

    此致
    Guillaume