日期:2014-05-16  浏览次数:20798 次

android ndk linux环境搭建

最近做android方面的项目中,用到JNI,就搭建了一个android ndk环境,但用cygwin编译so库慢的实在受不了,因此搭建了一个linux(ubuntu)虚拟机。虚拟机(vmware)和ubuntu很快就创建好了,但ubuntu和主机(windows xp)共享文件老是出问题,连续进行了3天,到现在才解决,本人是Android方面的菜鸟,如有错误望不吝赐教。下面是一些总结:

1.linux虚拟机与主机连通网络

2.linux虚拟机与主机共享文件

3.配置android ndk

 

1.linux虚拟机与主机连通网络

刚开始直接安装vmware tools,想按网上的方法,实现文件共享,但vmware tools 就是安装不上,安上了也共享不了,试到第2天才发现虚拟机根本ping不通主机,原来忙活了大半天,根本原因在这呢。

<1> 桥接

在"Virtual Machine Settions"--> "Network Adapter"中在选择 "Briged"并勾选下面的复选框。

在linux系统中设置网络连接,IPv4设置为“手动”,将IP设置为和主机在一个网段上那可,如:

主机IP:192.168.0.104

主机子网掩码:255.255.255.0

主机网关:192.168.0.1

主机DNS:222.222.222.222

则相应linux可设置为:192.168.0.105,其他和主机相同那可。

<2>NAT

在"Virtual Machine Settions"--> "Network Adapter"中在选择 "NAT"。linux中设置网络连接IPv4为“自动(DHCP)”即可。

 

2.linux虚拟机与主机共享文件

貌似最简单的方法是安装vmware tools,但我试了将近两天死活就是装不上,拷了别人一个装好的到我这儿就是共享不了。最后找到下面的方法,算是可以了:

将主机的共享目录挂载到linux虚拟机中

主机机ip:192.168.0.104

主机共享文件夹:jni

主机用户名:Administrator

主机密码:123

Ubuntu挂接文件夹:/mnt/share

挂接命令为: mount //192.168.0.4/jni /mnt/share -o username=Administrator,password=123,dmask=777,fmask=777,codepage=cp936,uid=0

但这样不支持Ubuntu启动时自动加载,每次启动时要共享需挂接一次,勉强能用了,别关机就是了,呵呵。

 

3.配置android ndk

解压android ndk,然后设置环境变量:

<1> /etc/profile

最后加上:

export NDK=/root/xfeng/android-ndk-r8d (ndk的解压目录)

export PATH=$NDK:$PATH

在终端下输入:source /etc/profile 使命令生效

<2> /etc/bash.bashrc

和/etc/profile一样加上上面两句命令,

在终端下输入:source /etc/bash.bashrc使命令生效,但与修改/etc/profile不同,它重启终端后环境变量仍然有效

验证设置

$NDK

bash:/root/xfeng/android-ndk-r8d:是一个目录

$NDK/ndk-build

Android NDK:Could not find application project drectory!

Android NDK:Please defile the NDK_PROJECT_PATH variable to point to it.

/root/xfeng/android-ndk-r8d/build/core/build-local.mk:130:*** Android NDK:Aborting   .Stop.

虽然由于当前目录下没有jni目录也没有Android.mk,但出现上面的错误提示也可以证明环境变量起作用了。