【问题标题】:Adding the tests directory to the android build system.img将测试目录添加到 android build system.img
【发布时间】:2014-07-04 01:33:21
【问题描述】:

我需要将 timetest 目录的可执行文件添加到 system.img 文件中,以便我可以从 shell 访问命令。地点在:https://android.googlesource.com/platform/system/extras/+/android-4.4.4_r1/tests/timetest/。所以我所做的就是进入 timetest 目录并发出以下命令:

mm snod

输出如下:

PRODUCT_COPY_FILES device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml ignored.
make: Entering directory `/home/username/android_built/android'
target thumb C: timetest <= frameworks/base/cmds/timetest/timetest.c
target StaticExecutable: timetest (out/target/product/hammerhead/obj/EXECUTABLES/timetest_intermediates/LINKED/timetest)
target Symbolic: timetest (out/target/product/hammerhead/symbols/sbin/timetest)
target Strip: timetest (out/target/product/hammerhead/obj/EXECUTABLES/timetest_intermediates/timetest)
Install: out/target/product/hammerhead/root/sbin/timetest
make: Leaving directory `/home/username/android_built/android'

为了清楚起见,省略了文件安装部分。

以下输出是在我尝试将 timetest 复制到 frameworks/base/cmds 之后,如本问题所述:android AOSP, adding new executable [.c] code。我也直接试了。

然后我查看了整个手机,包括 xbin,bin 目录。我也使用了 find / -name "timetest",但是找不到可执行文件。我做错了什么?

【问题讨论】:

    标签: android android-source android-build


    【解决方案1】:

    我实际上不确定您是如何将 timetest 安装到您的设备上,但如果您只是将结果推送到您的设备上,那么您可能很难运行它。

    如果您查看用于 timetest 的 Android.mk 文件,您会看到它被标记为“可选”

    LOCAL_MODULE_TAGS := optional
    

    但是,在对所有 make 文件进行 grep 之后,没有构建变体将其包含在构建中。如果您有自己的设备制作文件,您可以将其添加到那里,但如果您只想快速完成这项工作,您可以将其添加到 build/target/product/core_minimal.mk 文件中的 PRODUCT_PACKAGES 列表中。会有一个类似于以下内容的列表:

    PRODUCT_PACKAGES += \
        BackupRestoreConfirmation \
        DownloadProvider \
        HTMLViewer \
        MediaProvider \
    

    只需将 timetest 添加到该列表中即可。之后执行 make installclean 并重建您的设备,您应该在 sbin 中包含 timetest。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-03
      • 1970-01-01
      • 2015-08-12
      • 2013-04-17
      • 2016-07-27
      • 2010-11-22
      • 2019-11-22
      • 2011-12-21
      相关资源
      最近更新 更多