【NDK学习第一章】windows上ndk开发环境搭建,编译运行NDK自带的代码示例
在网络上查找的环境搭建的步骤以及命令很多都过时了,今天自己安装了以后,将步骤记录在这里供大家参考。本教程中的NDK版本为android-ndk-r8c
需要准备的东西:
NDK Cygwin NDK需要一个C/C++编译环境才能使用。因此在Windows上不仅需要安装NDK,还需要安装相应的C/C++环境,这就是Cygwin。
NDK下载地址(直接在sdk中搜索NDK,第一条就是):
http://developer.android.com/tools/sdk/ndk/index.html
Cygwin下载地址:
[url]http://www.cygwin.com/ [/url]
NDK直接下载后是一个压缩包,直接解压就可以使用。
1[img]

[/img]
Cygwin下载后是一个setup.exe。它需要在线安装。
2[img]

[/img]
下面主要说说Cygwin的安装方式。
双击setup.exe后
[img]

[/img]
点击下一步:
[img]

[/img]
默认,选择从网络安装,下一步:
[img][/img]

选择安装目录,下一步:
[img]

[/img]
下一步:
[img]

[/img]
选择直接连接,下一步:
[img]

[/img]
选择镜像地址,我选择的是163,下一步:
[img]

[/img]
这一步最重要。这里选择你要安装的内容。点击[color=red]Devel Install ,需要手动选中的是:[/color]
binutils gcc-core gcc-g++gcc-mingw-core gcc-mingw-g++ gdb make 其他的默认就好了。
或者你可以这样,直接将Devel Install全部选中,即,安装Devel Install中所有的东西即可。
接下去就等待安装就好了。
NDK和Cygwin都下载安装结束后,你得到了两个东西:我把他们都放在了E盘根目录下面
[img]

[/img]
接下去打开E:\cygwin\home\Administrator\.bash_profile 文件,可以使用EditPlus
在文件的最后追加
ANDROID_NDK_ROOT=/cygdrive/e/android-ndk-r8c
export ANDROID_NDK_ROOT
如图:
[img]

[/img]
注意:e代表的是E盘,我是直接放在根目录下面了,如果你放在某个文件夹下面,要记得加上对应的文件夹名称。
后面的ANDROID_NDK_ROOT可以为别的名称,但是需要注意的是:在你编译的时候,需要用到这个名称!(后面会提)
下面开始编译NDK中自带的代码示例:
再回到NDK,在NDK的根目录下有一个samples文件夹,里面放置的是google提供的一些官方代码示例。我们就以hello-neon为例,演示下如何编译和运行自带的源码。
打开cygwin目录下的Cygwin.bat
进入到samples工程目录下,执行ndk-build命令,如下图:
[img]

[/img]
在执行这个步骤之前,工程的目录是这样的:
[img]

[/img]
编译之后:
[img]

[/img]
接下去导入这个工程,
注意不能通过File->Inport来导入,需要通过File->New->Project->Android Project from Existing Code 来导入。导入后的工程结构:
[img]

[/img]
运行项目:
[img]

[/img]