歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

在Android下編譯C

以前根本沒有接觸過Android,對Android感覺老好奇了,在公司經歷幾天簡單的不知所雲的培訓就被拉去進項目了——悲催!啥都不會。總算把項目熬完了結果是啥都沒學到,淨給自己增加壓力了。今天剛好學習了下在Android下編譯C模塊,記錄一下。

我的Android源碼目錄是:/home/grj/android_kernel_workspace/Android-2.3.4,以下簡稱:$(android_src)。helloworld太經典了,我也使用這個例子來學習一下。

1、在$(android_src)目錄下,創建一個hello目錄。

         #mkdir $(android_src)/hello

2、在hello目錄中,編寫hello.c,內容如下:

         #include <stdio.h> 
         int main()
          {
               printf("hello world \n ");  

              exit(0);                   

           }
3、在hello目錄中,編寫Android.mk, 內容如 下:

   LOCAL_PATH:=$(call my-dir)
   include $(CLEAR_VARS)
   LOCAL_MODULE_TAGS := optional
   LOCAL_MODULE:=helloworld
   LOCAL_SRC_FILES:=hello.c
   include $(BUILD_EXECUTABLE)                                

LOCAL_SRC_FILES指定源文件,LOCAL_MODULE指定要編譯的模塊名,include $(BUILD_EXECUTABLE)指定編譯成可執行文件,改為BUILD_SHARED_LIBRARY為動態鏈接庫,這些可參考$(yourAndroid)/build/core/config.mk

4、回到Android源代碼頂層目錄進行編譯,cd $(andoird_src)   &&  make helloworld

Copyright © Linux教程網 All Rights Reserved