【轉】Android原生(Native) C開發之一 環境搭建篇

Android原生(Native) C開發之一 環境搭建篇

文章分類:移動開發

Android是基於Linux的操作系統,處理器是ARM的,所以要在Linux或Windows等x86系統上編譯Android能運行的程序,你需要一個交叉編譯器。 

 

在Linux下面,你可以自已編譯一個交叉編譯環境,但Windows下面,就比較複雜(也可以在cygwin中編譯一個),但你可以選擇下載一個現成的交叉編譯環境: 

http://www.codesourcery.com/gnu_toolchains/arm/download.html 

 

Windows: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3400/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.exe 

 

Linux: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3399/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.bin 

 

安裝好了之後,將 CodeSourcery編譯器的bin目錄 (我的是D:/Program Files/CodeSourcery/Sourcery G++ Lite/bin)加入你的PATH環境變量中,就可以開始你的Android Native C開發之旅了,寫好一個簡單的C程序: 

 

引用

#include 

 

int main(int argc, char** argv) { 

printf(”hello android!/nI’m %s!/nI like android very much!!!/n”, “Martin Foo”); 

 

return 0; 

}

 

另存成hello.c,進入命令行模式,確保交叉編譯器的bin目錄,及Android SDK的tools目錄在你的系統環境變量的path裏面,用如下命令編譯: 

 

arm-none-linux-gnueabi-gcc -static hello.c -o hello 

 

注意,一定要加上static參數,否則編譯好的可能會在Android上不能運行。 

 

啓動Android模擬器,用如下命令將文件push到Android模擬器上: 

 

adb shell mkdir /dev/sample 

adb push hello /dev/sample/hello 

 

adb shell chmod 777 /dev/sample/hello 

 

先創建 /dev/sample目錄,再將編譯好的hello上傳上去,最後將hello改成可執行的。 

 

再進入命令行模式,進入Android的shell環境: 

 

adb shell 

 

#cd /dev/sample 

 

#./hello 

 

進入 /dev/sample目錄,執行hello,運行結果如下圖: 

 

 

Android Native編譯環境 

 

源文檔 <http://yinter.javaeye.com/blog/521794

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章