zoukankan      html  css  js  c++  java
  • 搭建armlinuxgcc交叉编译工具链环境(Android原生(JNI)开发环境搭建)

    环境:

       windows xp+vmware+redhat(ubuntu)

       说明:本篇所述环境也是Android原生(Native)C(JNI)开发的环境

    1,先下载个交叉编译工具链版本

      http://www.codesourcery.com/sgpp/lite/arm/portal/subscription3057 选择最新版本进入下载页面后,选择Advanced Packages的IA32 GNU/Linux TAR下载后文件名为arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

    2,上传到/usr/local/后解压tar jxvf arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 到一个arm-2010.09

    3,测试,进入到/usr/local/arm-2010.09/bin目录下,创建一个main.c文件,

    main.c内容

    #include <stdio.h>

    int main()

    {

      int i=0;

      printf("%d\n",i);

      return;

    }

    执行./arm-none-linux-gnueabi-gcc main.c 

    无报错,生成a.out文件

    执行 ./arm-none-linux-gnueabi-gcc -v

    显示版本信息 4.5.1 

    可以啦

    修改/etc/profile文件的PATH,将当前目录/usr/local/arm-2010.09-50/bin加入到PATH里去

    source /boot/.bashrc 使修改立即生效

    实例测试:

    进入工作目录 /home/android/jniTest

    创建文件main.c,文件内容

    #include <stdio.h>
    int main()
    {
      int i=0;
      printf("hi ym012 %d\n",i);
      return;
    }

    arm-none-linux-gnueabi-gcc -static main.c -o main
    启动Android模拟器,先创建 /dev/sample目录,再将编译好的main上传上去,最后将main改成可执行的。其命令如下

    adb shell mkdir /dev/sample                        //在模拟器下创建一个目录
    adb push main /dev/sample/main                //将main文件上传到/dev/sample/main

    adb shell chmod 777 /dev/sample/main      //修改成可执行文件

     再进入命令行模式,进入Android的模拟器的/dev/sample目录执行hello:

    adb shell

    #cd /dev/sample

    #./hello                          //执行hello

    运行结果如下:

    hi ym012 0
    _______________

    总结:成功了!

  • 相关阅读:
    118. Pascal's Triangle
    697. Degree of an Array
    1013. Partition Array Into Three Parts With Equal Sum
    167. Two Sum II
    ol7 禁用mysql 自启动
    pgsql常用命令
    清空history 命令记录
    pgsql启动报错
    在rhel 7.4中安装glibc-devel-2.17-196.el7.i686包的过程详录
    postgresql-9.2 install
  • 原文地址:https://www.cnblogs.com/mahang/p/2160291.html
Copyright © 2011-2022 走看看