android 的NDK在Windwos环境搭建(一)

上一篇是android NDK在ubuntu10.04环境搭建,此次是windows的! php

NDK的Windwos环境搭建Eclipse版本是3.6以上的    html

1、下载android NDK您能够下载NDK r4  for Windows或NDK r5  for Windows安装包,下载地址:
地址:http://developer.android.com/sdk/ndk/index.html

2011122816360098.png 

下载后解压缩到你的工做目录,例如:E:\Android\tools\android-ndk-r7,结果以下图:
android


2011122816365794.png 

Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等内容。samples下面包含几个实例开发演示项目,第一次接触NDK开发,建议先从示例开始。下面先看一下编译环境配置。
2、下载Cygwin 因为NDK开发大都涉及到C/C++在GCC环境下编译、运行,因此在Windows环境下,须要模拟Linux模拟编译环境,下载地址:
http://www.cygwin.com/
下载setup.exe文件。 http://cygwin.com/setup.exe
2011122816371536.png 

使用过程以下:
第一步:运行setup程序,第一步图略,直接点击Next进入下一步。
第二步:选择安装方式,第一次能够采用Direct Connection在线下载安装,若有现成的离线包,能够选择离线安装(Install from Local Directory)。

第三步:选择安装目录,好比E:\Android\cygwin,注意此目录是指Cygwin最终的安装目录,不是下载文件暂存目录。
第四步:设置本地包暂存路径
暂存目录默认是放到setup.exe的同级目录下,下载后名字相似E:\Android\Softs这样格式。
第五步:设置网络链接方式
第六步:选择下载站点地址
起初尝试几个看哪一个速度快就用哪一个地址(若是感受不快就点取消,再次来过)。国内的话,我感受163的速度不错。

第七步:等待加载安装项载入,选择安装项
咱们编译NDK,在默认设置下,只需选择Devel(点击列表中Devel,将后面的Default改成Install,图中箭头所示),其它均为默认状态。

那四个单选按钮是选择下边树的样式,默认就行,不用动。View默认是Category,建议改为full显示所有包再查,省的一些包被隐藏掉。左下角那个复选框是是否隐藏过时包,默认打钩,不用管它就行,下边开始下载咱们要安装的包吧,为了不所有下载,这里列出了后面开发NDK用得着的包:autoconf2.一、automake1.十、binutils、gcc-core、gcc-g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make共12个包

2011122816380881.png 
第八步:等待下载完成
下载完成时间决定于你选择的安装包数量及网络链接速度,好比按照本文默认的选择方式,可能须要4-5个小时,下载后压缩包约830M左右,下载完成后会自动安装到上文设置的安装目录。

提醒:第一次下载完成后,最好把下载的包目录作个备份,下次安装一样的环境能够直接使用离线安装方式(第二步中选择本地安装)。


3、验证Cygwin环境  
安装完成后,运行cygwin,
第一次使用时,会建立一些用户环境文件,
在弹出的命令行窗口输入:cygcheck -c cygwin命令,会打印出当前cygwin的版本和运行状态,若是status是ok的话,则cygwin运行正常。
分别输入:
make -v
和,
gcc -v
若是检测成功,会有make和gcc相关版本信息打印出来,
4、编译示例  
一、设置NDK路径。
在windows的系统环境变量中添加NDK的路径。如:e/Andriod/tools/android-ndk-r7

二、也能够不添加,每次打开目录时,输入该路径便可。 /cygdrive/e/Andriod/tools/android-ndk-r7
2011122816402179.png 
四:用NDK来编译程序 

    一、如今咱们用安装好的NDK来编译一个NDK提供的示例的程序。

咱们选择ndk自带的例子hello-jni,个人位于android-ndk-r7\samples\hello-jni(根据你具体的安装位置而定),

    二、运行cygwin,输入命令cd /cygdrive/e/android-ndk-r5/samples/hello-jni,进入到E:\android-ndk-r5\samples\hello-jni目录。
2011122816420744.png 

三、输入 ../ndk-build ,执行成功后,它会自动生成一个libs目录,把编译生成的.so文件放在里面。(ndk-build是调用ndk的编译程序)
错误:
Android NDK: Host 'awk' tool is outdated。
找到目录E:\Android\tools\android-ndk-r7\prebuilt\windows\bin\awk.exe:删除awk。(为保险起见可先cp一份),从新ndk-build
成功编译:
2011122816425754.png 

  四、此时去hello-jni的libs目录下看有没有生成的.so文件,若是有,你的ndk就运行正常啦!正常编译完成后会在你的项目libs/armeabi目录下生成对应的 .so文件。
hello-jni目录中多了一个libs目录。打开目录,发现到so文件。
2011122816433756.png 
导入示例s到Android项目 ndk自带例子是没法直接导入的,须要使用方法以下(示例):
一、在Eclipse中新建一个工程HelloJni。在eclipse中经过 Create project from existing source 方法创建起hello-jni项目。须要注意的是在选择API level时须要选择1.5或更高的版本。如图所示:
2011122816442516.png 

二、导入成功后,目录。

三、运行该代码
2011122816445111.png 

五:在eclipse中集成c/c++开发环境

    一、装Eclipse的C/C++环境插件:CDT。

    首先登陆
http://www.eclipse.org/cdt/downloads.php ,找到对应你Eclipse版本的CDT插件的在线安装地址。

2011122816455385.png 
如图,首先是一个Eclipse C/C++ IDE Indigo SR-1的下载连接,该连接是用于下载自带集成了CDT插件的Eclipse开发环境,若是当前计算机上没有安装任一版本的Eclipse,则能够选择下载安装此版本Eclipse,则无需再另外安装CDT。
果已经安装了Eclipse Indigo,则可使用第二个链接“p2 software repository”在Eclipse的Help菜单下选择Install New Software并复制如上所述连接进行在线安装。
    二、在线安装。而后点Help菜单,找到Install New Software菜单

    三、点击Add按钮,把取的地址填进去,出来插件列表后,选Select All,而后选择下一步便可完成安装。
勾选Group items by category,会按分类出现供安装的组件。此处能够不须要安装全部的组件,推荐勾选CDT Main Features分类并勾选CDT Optional Features下的“C/C++ Development Platform”、“C/C++ DSF GDB Debugger Integration”、“C/C++ GCC Cross Compiler Support”、“C/C++ GNU Toolchain Build Support”、“C/C++ GNU Toolchain Debug Support”、“Eclipse Debugger for C/C++”、“Miscellaneous C/C++ Utilities”这些组件,其余组件能够在须要用的的时候再进行安装.

三、离线安装
若是在线安装的方法因为网络缘由或者其余缘由不可以成功完成,则能够经过下载离线安装包的方式进行安装,首先须要经过如图13-10中最下方的连接下载CDT安装包,例如目前最新的8.0.1版本,下载到本地后,在如图13-11所示的界面中点击地址栏右方的Add…按钮,而后点击Archive按钮并定位到刚下载的cdt-master-8.0.1.zip压缩包,再进行安装便可。

四、安装完成后,在eclispe中右击新建一个项目,若是出现了c/c++项目,则代表你的CDT插件安装成功啦!

2011122816463516.png 

6、使用Sequoyah插件来配置
一、Sequoyah插件的官方下载点为http://www.eclipse.org/sequoyah/downloads/,在该网页上一样提供了用于在线安装的update site地址以及安装包的下载地址,须要注意的是在安装界面要确认Group items by category复选框处于未选中状态,不然可能出现列表为空(There are no categorized items)的状况。所有勾选列出的安装包并完成安装。
http://download.eclipse.org/sequoyah/updates/2.0/

2011122816545915.png 

Sequoyah安装完成后,
添加ndk路径。
在windows-》preferences。

2011122817103631.png 


右键点击任意的 Android Project会发如今Android Tools中多出了一个“Add Native Support… ”选项

2011122816573089.png 

Add Native Support…点击后会弹出一个简单的设置界面。
2011122817131068.png 

JNI编译环境配置

对于jni项目,须要添加c编译以及依赖库。
右击项目-》Properties。
编译设置:
在弹出界面中选择c/c++Build。在builder setting选项卡的build command输入 “bash <ndk路径>/ndk-build" 。以下图
2011122822250852.jpg 
依赖库
 选择Gennera-》paths and。。。-》includes选项卡,选择GNU c。添加依赖路径
\android-ndk-r7\platforms\android-8\arch-arm\usr\include

2011122822263449.jpg 


下篇:另一种windows风格的  windows上搭建NDK环境(二)
相关文章
相关标签/搜索