按照Aosp-Node-PrebuiltsREADME中的说明,我将存储库克隆到Orange Pi 4 LTS RK3399-Android8.1树(我已成功构建)的外部目录中,并成功运行
make arm64
。但因为我使用 Orange Pi 4 LTS Android 源代码中包含的 build.sh
进行构建,所以我的 shell 并未“使用 buildenv 和午餐组合进行初始化”。
自述文件指出:
如果您希望Android.mk自动执行,请将其添加为 另一个项目的依赖。
如何添加 Aosp-Node-Prebuilts 作为另一个项目的依赖项?
我尝试将“Aosp-Node-Prebuilts”添加到
PRODUCT_PACKAGES
中的build/make/target/product/base.mk
,但这不起作用。
我尝试搜索外部目录中带有
Android.mk
文件的其他包如何添加为依赖项,但没有找到任何内容。 (我搜索了 strace
和 tcpdump
——我确认它们都在目标上的 /system/xbin
中。)
我通过将
node
添加到 PRODUCT_PACKAGES
中的 build/make/target/product/base.mk
来完成相当于“添加 Aosp-Node-Prebuilts 作为另一个项目的依赖项”:
PRODUCT_PACKAGES += \
node \
20-dns.conf \
...
我相信包名称是“node”,因为
LOCAL_MODULE
在 Aosp-Node-Prebuilts Android.mk文件中设置为
node
。我通过将其添加到Android.mk
来确认这有效:
LOCAL_POST_INSTALL_CMD := echo "Aosp-Node-Prebuilts LOCAL_SRC_FILES: $(LOCAL_SRC_FILES)"
...我确认在运行构建时得到了回显:
Aosp-Node-Prebuilts LOCAL_SRC_FILES: target/node
我还确认了
target/node
目录中的external/Aosp-Node-Prebuilts
被复制到了out/target/product/rk3399/system/bin
。 (它没有添加到构建的 update.img
文件中——但这是一个不同的潜在问题。)