Linux 中搭建NDK开发环境,Ubuntu

由于大部分开发人员均在linux环境下进行NDK开发,windows 下的cgywin工具还是有一定局限,特别是windows文本格式和linux有差异,所以从网上下载下来的程序,很难在windows下运行成功,至少会造成很大麻烦,很多错误无从查找,而且网上很多资源也是在linux下编译开发的,在windows下导入也很不方便.而且在linux下开发这个东西也的确相对方便多了.

下面是自己搭建linux NDK开发环境,步骤如下:

<1> : 我是在虚拟机中做的,虚拟机VMWare V9.0或以上的,网上这个资源比较多,我为了以后换地方,把这些东西都放在网盘中.

<2> : 在从Ubuntu官方网站下载最新的,我是选择64位的Ubuntu操作系统,下载以后就是iso的文件;其他社区的linux也是差不多.

<3> : 利用VMware安装Linux是在太简单了,不多解释.

<4> : 现在为NDK需要下载一下资源

<a> : oracle 官方网站上下载 jdk7.0~~(64bit) linux版本的,jdk以后多少版本感觉对一般的开发不会有太大区别;

<b> : 在google官方网站下载adt-bundle-linux-x86_64-20131030.zip,这个也是64bit的linux版本,将来可能有更新,但是不重要,只要选择64bitlinux版本的即可;

<c> : 从google官网下载ndk开发包:android-ndk-r9d-linux-x86_64.tar.bz2,以后这个也会有更新,同样只要选择64bit的linux版本就可以了.

<5> : 我用的是Ubuntu 12.0.4版本的,与很久以前界面差别也很大,感觉最不爽的是它不会提供root账户在UI界面登入了,蛋疼.作为非linux系统开发人员,我还是喜欢全权拥有root权限,

拥有root权限可以做我想做的一切,不受任何限制.

<6> : 建议上面的包全部在windows下先下载好,然后拷贝到U盘或者移动硬盘中,我选择的移动硬盘,拷贝好后,移动硬盘不要拔出来,鼠标点击虚拟右下角一个像移动硬盘的icon,在弹出菜单中选择connect,Ubuntu过几秒钟后,就会显示移动硬盘的各个盘符,拿里面东西和windows下操作一样的.

<7> : 现在linux中的/home路径下新建一个名为share文件(名字不重要,可根据自己),从移动硬盘中拷贝上面三个相关文件到/home/share/目录下;

<8> : 然后启动ubuntu终端,输入:

tar -zxvf jdk-name
tar -unzip android-name;
tar -jzxf ndk-name

全部解压到/home/share/目录下;

<9> : 设置上面jdk,sdk,adb,ndk环境变量:

JDK :

sudo gedit ~/.bashrc
#set jdk environment

JAVA_HOME=/home/share/jdk-1_7_0_51

CLASSPATH=.:$JAVA_HOME/lib.tools.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CLASSPATH PATH
source ~/.bashrc

立即生效

SDK :

sudo gedit ~/.bashrc
export PATH=/home/share/adt-bundle-linux-x86_64-20131030/sdk/tools/android-sdk-linux/platform-tools:$PATH 
export PATH=/home/share/adt-bundle-linux-x86_64-20131030/sdk/tools:$PATH 
source ~/.bashrc

注意点:

如果再上面设置环境变量时,由于字符等把.bashrc文件内容设置错误,结果在终端里面不能够使用sudo等命令时,请不要着急,可以这样继续编辑.bashrc文件,直到编辑正确为止:

/usr/bin/sudo gedit ~/.bashrc

ADB :

这个鸟东西反而相对复杂点.

可以参照:http://blog.csdn.net/ithomer/article/details/7307449设置方法设置一下ADB

但是设置好上面还不够,还需要如下操作:

64位系统,Ubuntu12.10,搭建JDK,Android环境,把android SDK复制过来后,里面的adb和其它命令的都不能使用。

错误提示:android-sdk-linux/platform-tools/adb: 没有那个文件或目录。 

解决方法:由于是系统64bit的,而Android SDK只有32bit的程序,需要安装ia32-libs,才能使用。

运行如下命令:

sudo apt-get install ia32-libs

OK!

安装这个库需要一点时间,wait...............

安装好上面的一切,在终端输入adb,结果显示才会和windows的一样.

NDK :

sudo gedit ~/.bashrc
#set NDK env
export NDK_HOME=/home/share/android-ndk-r9d
export PATH=$NDK_HOME:$PATH
source ~/.bashrc

设置完上面的一堆东西,就可以了.

jdk验证:

javac -version

adb验证:

adb devices

ndk验证:

ndk-build

提示目录之类的不正确就OK了.

上面所有环境变量就设置OK了.

<9> : 然后启动eclipse,启动后,所有的操作和windows上面基本上是一样的.sdk在eclipse里面已经设置好了,启动后可以直接进行开发.

<10> : 最后的也是很关键的,如果不想总是走上路的过程,把整个虚拟机vm文件备份起来,将来就可以拷贝到其他电脑上直接使用就可以了,不需要反复设置.

如果不是使用google继承的,如果出现eclipse找不到java,而环境变量又设置好了,可以这样:

http://nigelzeng.iteye.com/blog/1585399