android AOSP,添加新的可执行文件[.c]代码

时间:2014-01-03 08:17:11

标签: android

我一直在尝试在android构建中引入新命令。

我做了什么:

在AOSP源代码树中:

1)在android / External Directory中创建新目录说:     newCmd / newCmd.c,newCmd / Android.mk

In the Android.mk

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:= newCmd.c
LOCAL_MODULE := newCmd
LOCAL_STATIC_LIBRARIES := libcutils libc
include $(BUILD_EXECUTABLE)

2)在Top,我跑'm'命令。      我的程序编译好了,输出低于输出。

target Executable: newCmd (out/target/product/generic/obj/EXECUTABLES/newCmd_intermediates/LINKED/newCmd)
target Symbolic: newCmd (out/target/product/generic/symbols/system/bin/newCmd)
Export includes file: external/newCmd/Android.mk -- out/target/product/generic/obj/EXECUTABLES/newCmd_intermediates/export_includes
target Strip: newCmd (out/target/product/generic/obj/EXECUTABLES/newCmd_intermediates/newCmd)
Target ram disk: out/target/product/generic/ramdisk.img

问题:

当我启动模拟器时,我在/ system / bin目录中看不到newCmd。

我错过了什么吗?

请咨询。

2 个答案:

答案 0 :(得分:4)

确定。

我找到了解决方案。我将包名称包含在PRODUCT_PACKAGES标记下的core.mk文件中后,它已得到解决。

无论如何,谢谢大家。

答案 1 :(得分:1)

我认为您将代码放在错误的位置,外部文件夹不用于实现将在android系统中使用的命令。

将newCmd文件夹移动到framework / base / cmds中,并将新命令的模块名称(例如newCmd)添加到build / target / product / base.mk