作者:温尚书,华清远见嵌入式学院讲师。

Android系统中的应用程序都是用Java开发的。Android NDK使我们能够在android上使用C/C++开发的原生代码。有两个理由使用NDK: 一是合理的重用现有的代码;二是在程序中某些关键的部分提高执行效率。

本篇文章,假设读者已经有Android应用开发和一定的C/C++开发基础,只是讲解如何在Windows下配置环境来进行NDK开发。

要在Windows下使用NDK开发,除了NDK开发包(可以从android网站下载),还需要一个模拟Linux开发环境的工具:cygwin。 Cygwin是一个Linux/Unix模拟器,可以使用它来模拟Linux/Unix开发环境,并且可以灵活的根据需求,下载安装所需要的软件包,通过它,我们可以使用Linux中的GCC编译器和Make等。

下面我们一步步来对其进行安装配置。

首先到cygwin网站上下载cygwin安装文件,然后根据提示开始安装,如下图所示:

选择“Install from Internet”,如下图所示:

选择所需要的安装包,如下图所示:

一般来说,只需要选择以下的安装包即可:

– autoconf2.1
        – automake1.10
        – Binutils
        – gcc-core
        – gcc- g++
        – gcc4-core
        – gcc4-g++
        – Gdb
        – Pcre
        – pcre-devel
        – Gawk
        – make

安装完成后,启动cygwin,在其中输入gcc命令,应该出现类似下图的输出信息,或者输入gcc –version,应该出现版本信息,如下图所示:

如果cygwin安装成功,接下来需要在cygwin中配置NDK。配置步骤如下:

1:首先需要到Android官网上下载NDK,本教程所使用的NDK版本为NDKr5c版本

2:进入Cygwin安装目录/home/你的windows用户名,找到下面的.bash_profile文件,备份一份,然后在最后加入如下2行配置:
                – NDK=/cygdrive/D/Android/android-ndk-r5c 
                – export NDK

3:其中,D为NDK所在的盘符,Android/android-ndk-r5c为androidNDK的目录,例如上面的配置,说明其NDK放在D:\\Android/androi-ndk-r5c目录下

4:打开Cygwin,输入$NDK,如果能正确输出刚才设置的文件,说明配置成功。

接着需要在Eclipse中安装CDT插件,让Eclipse可以编辑和编译C/C++程序。安装方法如下: 打开Eclipse(本教程所用的Eclipse版本为Helios),然后,在菜单中选择“Help”?“Install New Software”,然后输入需要安装的CDT插件的路径,如下图所示:

然后将下面的两个软件包都选上,然后点击“Next”安装即可。

支持,所需要的各个软件都已经安装上,可以进行NDK应用的开发了。

华清远见免费学习资料汇总

1.       华清远见企业学院免费讲座:http://www.farsight.com.cn/lecture/index.aspx

2.       华清远见企业学院下载中心:http://download.farsight.com.cn/download/

3.       华清远见嵌入式学院免费课堂:http://www.embedu.org/Lecture/

4.       华清远见3G学院免费优惠:http://www.3g-edu.org/free/

5.       华清远见资料索取:

·《Android多媒体编程从初学到精通(1-6)》电子书,索取地址:http://www.3g-edu.org/news/materials.htm

·《嵌入式Linux应用程序开发标准教程》(2)和《Linux设备驱动开发详解》电子书,索取地址:http://www.embedu.org/news/materials.htm

 

 

 

更多相关文章

  1. Android在使用WebView时,图片显示出错问题。
  2. ndk 编译webrtc出现 rw_lock_posix.h:35: error: 'pthread_rwloc
  3. Android菜鸟笔记- 获取未安装的APK图标、版本、包名、名称、是否
  4. androidStudio 4.0 打包jar、找不到jar一系列问题、classes.jar
  5. 如何指定让Android的NDK工具编译出Release版本或Debug版本的Nati
  6. android嵌入lua
  7. Android模拟键盘之菜单键消失
  8. 【Tensorflow】Tensorflow移植Android上的过程和坑
  9. Android(安卓)Studio系列教程(六) Gradle多渠道打包

随机推荐

  1. ANDROID_SDK_HOME的设置
  2. 深入了解Android图形管道-part1
  3. android 系统启动过程中加入tcpdump和log
  4. Android(安卓)Studio 断点调试和高级调试
  5. android仿人人网右边可推出的效果
  6. Android(安卓)2.3 NDK的新特性
  7. activity-alias的使用
  8. Android学习笔记-ProgressBar和ListView
  9. android 随手记 读写文件的几种方式
  10. adb.exe无法运行,提示0xc000007b错误