一、搭建Ubuntu,这里搭建的是Ubuntu Kylin 14.04 LTS, 可以参考文章:http://www.ubuntukylin.com/ukylin/forum.php?mod=viewthread&tid=9756&extra=page%3D1
1.Ubuntu分区:
这里分区主要使用MBR分区模式,该模式有三种分区类型:主分区、扩展分区和逻辑分区,另外还有个活动分区的概念。一块硬盘最多只能有4个主分区,扩展分区算是一个主分区,但其不是真正的分区,它是逻辑分区的容器,即扩展分区里可以划分出若干个逻辑分区;活动分区指的是用来启动系统的分区。因此,若硬盘要划分的分区在 4 个或 4 个以下,则可以全部是主分区,也可以是n(n<4)个主分区加4-n个逻辑分区(放在扩展分区中)若分区超过4个,则最多只能有3个主分区,剩下的分区再在扩展分区中去划分逻辑分区。
在Linux中,没有类似Windows的盘符的概念,所有的分区都以"挂载目录"的方式存在。现在的主流硬盘多是SATA存储设备,所在在Linux中,以"sd"表示。如果有多块硬盘则以英文字母来排序,即第一块硬盘表示为"sda",第二块为"sdb"...如果插入U盘同样也是依次排序其中。而对于硬盘的分区则是按数字依次排序。比如硬盘sda的第一个分区就是"sda1",第二个分区就是"sda2"。如果该分区是逻辑分区,则以5开始,即"sda5".
综上知识之后,我的分区是应该是如下所示的:
我的分区列表
设备 | 分区类型 | 文件系统 | 挂载点 | 描述 |
/dev/sda1 |
主分区 | ext4 | / |
做为Ubuntu安装 |
/dev/sda5 | 扩展分区 | ext4 | /home | 做为个人数据使用 |
/dev/sda6 | 扩展分区 | Linux-swap | 交换空间 |
二、安装Android编译环境
1.添加软件源:
sudo gedit /etc/apt/sources.list
2.在文件后加上:
deb http://archive.ubuntu.com/ubuntu/ quantal main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ quantal-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ quantal-updates main restricted universe multiverse
3.因为Ubuntu是64位环境,而Android的编译环境是在32位环境下运行的,所以要安装32位编译支持库。
sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dri:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev
注意:此处若安装出现依赖的错误,建议重新启动,以确认软件源添加正确。
4.安装JDK:
ubuntu中有默认的jdk版本,是openJDK。但是还是建议使用oracle中标准的jdk去安装。
这里主要安装两个jdk版本: java1.6和java1.7。java1.6主要用于编译 5.0以下Android系统,而1.7则用来编译5.0以上的anroid系统。
1)安装 jdk1.6.0_45
解压到jdk-6u45-linux-x64.bin到目录 /usr/lib/jvm/jdk1.6.0_45
配置环境变量:
sudo gedit ~/.bashrc
末尾添加:
#jdk1.6.0_45
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
2)安装 jdk1.7.0_75
官网下载包,解压到目录 /usr/lib/jvm/jdk1.7.0_75
配置环境变量,与上类似,末尾添加
#jdk1.7.0_75
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_75
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source ~/.bashrc
4)使用update-alternatives来配置默认的jdk版本。这里可以参考 :http://blog.csdn.net/snowdream86/article/details/6677450
当然,如果配置失效,还有一种方法是在文件中用 "#" 注释掉不需要用jdk配置即可。
使用Linux下的update-alternatives来切换默认安装的版本(详细可以google一下该命令的作用),如上所述,配置好两个jdk之后,可以通过该命令来实现切换了:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_45/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_45/bin/javac 300
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_75/bin/java 301
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_75/bin/javac 301
最后可以通过下面的命令来切换需要的默认jdk版本,其中300和301都是优先级的意思
sudo update-alternatives --config java
// 待补充
4. Android 开发环境搭建
1) 下载Eclipse 和 Android SDK Manager 这个可以在官网上按教程来弄。
2) 配置Android SDK 环境变量:
sudo gedit ~/.bashrc
在配置文件末尾添加:
#Android SDK
export ANDROID_HOME=/home/ahuier/AndroidDev/android-sdk-linux
PATH=$PATH:/home/ahuier/AndroidDev/android-sdk-linux/tools
PATH=$PATH:/home/ahuier/AndroidDev/android-sdk-linux/platform-tools
【注意】: 以上的环境变量的路径都是我自己存放的目录,请谨慎参考。
=======================================================
自此,整个android开发环境搭建已经完成了。当然环境搭建完成之后,作为研发需要保证代码质量,做到Clean Code。所以后面会写关于Eclipse中常用格式设置,和一些代码规范的工具设置的一些介绍。也当做是自己做一个备份吧。
参考连接:
1. http://blog.csdn.net/tecn14/article/details/24797545
2. http://blog.csdn.net/yuxiayiji/article/details/37812785
3. http://www.linuxidc.com/Linux/2014-07/104087.htm
4. http://blog.163.com/l1_jun/blog/static/1438638820146142015371/
5. http://www.linuxidc.com/Linux/2014-05/101148.htm
6. http://www.cnblogs.com/sink_cup/archive/2011/10/31/ubuntu_x64_android_sdk_java.html
7. http://blog.sae.sina.com.cn/archives/3948
8. http://demo.netfoucs.com/love_bb/article/details/24810107
9. http://www.linuxidc.com/Linux/2014-05/101039.htm
10. http://www.it165.net/pro/html/201404/12641.html
11. http://blog.sina.com.cn/s/blog_6386bafd0101do6h.html
12. http://www.2cto.com/os/201305/208689.html
13. http://my.oschina.net/gxs2012/blog/322583