在android下编译.C程序出错
Android.mk文件如下LOCAL_PATH := $(call my-dir)LOCAL_SRC_FILES:= helloworld.c
LOCAL_MODULE_TAGS :=optional
LOCAL_MODULE := helloworld)
include $(BUILD_EXECUTABLE)
在android根目录下执行: mmm development/helloworld/
提示一下错误:
make: *** No rule to make target `out/target/product/generic/obj/lib/crtbegin_dynamic.o', needed by `out/target/product/generic/obj/EXECUTABLES/helloworld_intermediates/LINKED/helloworld'. Stop.
谁给指点一下,错在什么地方? --------------------编程问答-------------------- 是不是这里:
LOCAL_MODULE := helloworld) --------------------编程问答-------------------- sorry,是我输入错了 --------------------编程问答--------------------
不是这个问题 --------------------编程问答--------------------
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := hello-jni
LOCAL_SRC_FILES := hello-jni.c
include $(BUILD_SHARED_LIBRARY)
最简单的一个Makefile --------------------编程问答-------------------- LOCAL_PATH := $(call my-dir)LOCAL_SRC_FILES:= helloworld.c
这行实际文件里面是不是这样连在一起的?是的话有问题的。 --------------------编程问答-------------------- 你编译整个工程了吗?crtbegin_dynamic.o看样子你需要把工程全编一下 --------------------编程问答--------------------
这个是编译动态库的,我想编译一个可执行文件。 --------------------编程问答--------------------
你说的工程是指什么?我只想编译一个在Linux下可执行的文件。能否详细给讲解一下。谢谢。 --------------------编程问答-------------------- 就是在你的工作目录下全编,development这个目录上面的那个目录;或者你上网查下如何编译Android源码。 --------------------编程问答--------------------
include $(BUILD_SHARED_LIBRARY)
换成
include $(BUILD_EXECUTABLE)
就是可执行文件了。
补充:移动开发 , Android