我有一个本机二进制文件,我想将其包含到Android的源代码中,以便在编译时我的二进制文件将包含在/ system/bin中。在Android源代码中添加预构建的二进制
我抄我的二进制文件到文件夹/预建/机器人臂/我的二进制,和我创建了一个新的Android.mk有以下几点:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := my-binary
LOCAL_MODULE := my-binary
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE_TAGS := optional
include $(BUILD_PREBUILT)
但是当我运行让,我在日志中得到的唯一参考如下:
target Prebuilt: my-binary (out/target/product/generic/obj/EXECUTABLES/my-binary_intermediates/my-binary)
和二进制并没有安装到system.img可言。在Installing a prebuilt binary on Android: "not found"中有一个几乎相同的问题,但提问者已经知道了基本程序,并且根本没有解释。如果我运行使我的二进制,我得到了我张贴的相同的行。
我也尝试运行make/target/product/generic/system.img my-binary但它也不起作用。我的二进制文件出现在列出的子文件夹中,但它不会包含在system.imng中
我是否缺少什么?有没有什么办法,只要运行make -j#我的二进制文件将包含在/ system/bin中?
呀,我用Android.mk在参考同一个目录下gdbserver的发现,但它不工作的readOn一些。我会试着用mmmm;我会马上回来...... 编辑:*嗯嗯预建snod -j *工作!我打算做一个* make clean *,看看是否从头开始重建所有东西...... – ziritrion
真的很奇怪......直接从回购(无需使用我的二进制文件)在源代码上运行* make *编译好。但是,当我添加我的二进制文件,我得到奇怪的错误。最糟糕的是,即使我做了一个* make clean *并取出我的文件夹(它应该让源代码就像刚开始时一样,因为我没有碰到其他任何东西),当我尝试编译它时仍然会收到编译错误。我释放了空间,确保它与代码本身没有任何关系(我在VMware上运行Ubuntu 10.04) – ziritrion
make clean只需删除'out'文件夹。它不会将代码更改为defaoult。你能用编译过程中遇到的错误更新答案吗? – Yury