Debian 搭建 Android开发环境(arm-linux-gcc+NDK+JNI+SDK+Java)
Debian build Android development environment (arm-linux-gcc + NDK + JNI + SDK + Java)
Debian 搭建Android C开发环境

  • arm-linux-gcc交叉编译工具链环境
  • NDK环境
  • SDK+Java环境

  • arm-linux-gcc交叉编译工具链环境
  • http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3057 选择最新版本进入下载页面后,选择Advanced Packages的IA32 GNU/Linux TAR下载后文件名为arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

    下载后,解压到/usr/local/src/arm-2011.03-41

    创建环境变量

    nano ~/.bashrc

    1
    2
    3
    4
    5
    
    ANDROID_ARM=/usr/local/src/arm-2011.03-41
     
    PATH=$ANDROID_ARM/bin:$PATH
     
    export PATH

    查看安装情况
    arm-none-linux-gnueabi-gcc -v

    1
    2
    
    Thread model: posix
    gcc version 4.5.2 (Sourcery G++ Lite 2011.03-41)

    代码测试
    nano test.c

    1
    2
    3
    4
    5
    6
    7
    
    #include 
    int main()
    {
            int i=0;
            printf("%d\n", i);
            return;
    }
    1
    
    arm-none-linux-gnueabi-gcc -static test.c -o test

    将编译结果放到Android手机下进行测试

    adb push test /data/local/test
    adb shell chmod 777 /data/local/test
    adb shell /data/local/test

    输出结果

    0

  • NDK(JNI)环境
  • NDK的官方下载页面:http://developer.android.com/sdk/ndk/index.html

    解压NDK到/usr/local/src/NDK

    配置NDK环境变量

    1
    2
    3
    
    nano ~/.bashrc
    NDK=~/android-ndk-r4b 
    export NDK

    安装make环境

    1
    
    apt-get install make

    编译示例程序

    1
    2
    
    cd $NDK\samples/hello-jni
    $NDK/ndk-build

    配置正确的话,则会输出下面的信息

    Gdbserver      : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
    Gdbsetup       : libs/armeabi/gdb.setup
    Compile thumb  : hello-jni <= hello-jni.c SharedLibrary  : libhello-jni.so Install        : libhello-jni.so => libs/armeabi/libhello-jni.so

    如果你没有安装make环境,则会提示如下错误

    Cannot find 'make' program. Please install Cygwin make package

    Java调用NDK so类的规则

    Java_com_example_hellojni_HelloJni_stringFromJNI

    Java_是固定的,表示要用Java代码来调用
    com_example_hellojni表示包(package)必须为com_example_hellojni

    HelloJni表示类(class)必须为HelloJni

    stringFromJNI表示方法名必须为stringFromJNI

  • SDK+Java环境
  • Java安装

    1
    
    apt-get install sun-java6-bin sun-java6-fonts sun-java6-jdk sun-java6-jre

    Android SDK 安装
    从官网下载http://developer.android.com/sdk/index.html最新的SDK

    解压并配置环境变量
    更新SDK

    android update sdk
    
    © 2012 客家缘分小筑 Suffusion theme by Sayontan Sinha