用android build system 编译自己…
2014-01-15 12:05
316 查看
用android build system 编译自己的app
http://cornsea.blogspot.com/2009/03/anroid-build-system-init.html在system文件夹下
建立一个myinit文件夹
编辑一个init.c文件
代码如下
#include <stdio.h>
#include <unistd.h>
int main(int argc, char *argv[])
{
int i = 0;
while (1)
{
printf("hello world (%d)",i++);
sleep(2);
}
return 0;
}
另外建立一个Android.mk 文件,内容如下
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= \
init.c
LOCAL_MODULE:= init
LOCAL_FORCE_STATIC_EXECUTABLE := true
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_UNSTRIPPED)
LOCAL_STATIC_LIBRARIES := libcutils libc
#LOCAL_STATIC_LIBRARIES := libcutils libc libminui
libpixelflinger_static
#LOCAL_STATIC_LIBRARIES += libminzip libunz libamend libmtdutils
libmincrypt
#LOCAL_STATIC_LIBRARIES += libstdc++_static
include $(BUILD_EXECUTABLE)
在myinit文件夹下输入mm,
编译系统就会自动输出一个编译好的init程序
输出的路径也会提示出来。
-------------------------------------------------------------------------------------
Another
paper in english
Add a new
component into open source Android
The android build system is complicated. It is not easy to create asimple build script to build single component. But it is much
easier to add a new component into the build system. Here is a
sample to build the "Hello world!" for Android, and it is dynamic
linked executable.
create a directory for the new component in
$(YOUR_ANDROID)/external folder:
$(YOUR_ANDROID)/external/hello
put the hello.c into the directory:
$(YOUR_ANDROID)/external/hello/
create Android.mk in $(YOUR_ANDROID)/external/hello/ directory,
the Android.mk likes the following:
LOCAL_PATH:=$(call my-dir)
include $(CLEAR_VARS)
LOCAL_ARM_MODE := arm
LOCAL_SRC_FILES:= \
hello.c
LOCAL_MODULE := hello
include $(BUILD_EXECUTABLE)
add the following line into
$(BUILD_SYSTEM)/main.mk,$(BUILD_SYSTEM) is in
$(YOUR_ANDROID)/build/core:
external/hello
launch the build command in $(YOUR_ANDROID): make hello
you will have the build target hello in
$(YOUR_ANDROID)/out/target/product/generic/system/bin.
You can use include $(BUILD_SHARED_LIBRARY) to create shared
library. Find more in $(YOUR_ANDROID)/build/core/config.mk.
相关文章推荐
- Android&nbsp;build&nbsp;system
- Google&nbsp;Android操作系统内核编译图…
- android&nbsp;build
- 编译android源码报错:build/envsetup.sh: 1: Syntax error: "(" unexpected
- android&nbsp;--&nbsp;编译不同库…
- Android build system & Android.mk 规范
- Android build system & Android.mk 规范
- 编译自己的Windows Android SDK(how to build Android SDK for Windows)
- Android&nbsp;project&nbsp;的常用编译方法
- Android&nbsp;project&nbsp;的常用编译方法
- 编写自己的android&nbsp;jni程序
- android编译时出现cannot fin…
- Android build system & Android.mk 规范
- Android 编译命令 make j8 2>&1 | tee build.log 解释
- Android build system & Android.mk 规范
- 关于使用Android&nbsp;NDK编译ffmpeg
- Android build system & Android.mk 规范
- Android 编译命令 make j8 2>&1 | tee build.log 解释
- Android编译环境(1)&nbsp;-&nbsp;编译Native&nbsp;…
- 【Android7.1.2源码解析系列】Android编译系统翻译------Android_Build_System(/build/core/build-system.html)