Deepin/Ubuntu/Ubuntukylin/Xubunt/Lubuntu/Kubuntu Android 开发环境配置

本文仅适用于通用android系统的编译环境(如CM、AOSP等)和patchrom代码插桩(如miui、Lewa等)
--------------------------------------------------------------------------------

Ubuntu采用的交互界面比较耗资源,且许多人吐槽无法适应其操作方式

幸好Ubuntu有许多分支,且都支持android开发
关于版本,并非越新越好,个人认为13.04即可,或更早的版本也行。
按照从省资源到耗资源,个人认为的排序如下
Lubuntu 注意:麒麟其实与Ubuntu根本是一样的
有空的话,建议逐个安装尝试一下,找到适合自己的
这些发行版的核心是完全一样的,都为Ubuntu,只是桌面UI不同
Lubuntu采用LXDE
Xubuntu采用XFCE
Kubuntu采用KDE
Ubuntu采用GNOME
Deepin采用深度自己定制的UI

举例来讲,Ubuntu安装XFCE桌面后,就可以变成Xubuntu
apt-get install xubuntu-desktop
或apt-get install xfce4

所以本质上来讲,这些发行版都是完全一样的系统
--------------------------------------------------------------------------------
下载地址
Lubuntu 13.04
http://cdimages.ubuntu.com/lubuntu/releases/raring/release/
Xubuntu 13.04
http://cdimages.ubuntu.com/xubuntu/releases/raring/release/
Kubuntu 13.04
http://cdimages.ubuntu.com/kubuntu/releases/raring/release/
Ubuntukylin 13.04
http://cdimages.ubuntu.com/ubuntukylin/releases/raring/release/
Ubuntu 13.04
http://cdimages.ubuntu.com/releases/raring/release/
Deepin
http://www.linuxdeepin.com/download.cn.html
--------------------------------------------------------------------------------
Deepin界面友好,并且基于Ubuntu,推荐使用
请下载Deepin 2013.1 64位,本文也仅针对此版本,其它发行版大同小异
在后续使用过程中切记不要进行更新,请关闭自动更新功能,避免安装依赖lib时造成冲突
安装过程此处省略
--------------------------------------------------------------------------------
首次进入系统,打开终端
设置root用户密码,重复2次
sudo passwd root
请记住设置的root用户密码,如果仅自己使用,可不用设置太复杂
--------------------------------------------------------------------------------
更新源
先su,输入root用户密码,获取root权限后,终端提示符变成#号
apt-get update
注意:以下所有操作都在root权限下进行
--------------------------------------------------------------------------------
关于编辑器
Ubuntu和Deepin自带gedit
Xubuntu自带mousepad
Lubuntu自带leafpad
Kubuntu自带kate
也可以自行安装终端上使用的vim(非必须)
apt-get install vim
vim使用方法请自行科普
--------------------------------------------------------------------------------
普通用户提升root权限(root权限操作方便,但会造成软件中心和chrome无法打开)
普通用户也可以在需要的时候用su获取root,所以此步骤不是必须,请自行选择
在root权限的命令行中启动gedit编辑passwd文件,如果没有root权限,会造成无法保存
gedit /etc/passwd
(如果是其它发行版,请自行更改命令换成其它自带编辑器)
底部最后一行,可以找到自己设置的用户名,把1000改成0
用户名:x:1000:1000:用户名,,,:/home/用户名:/bin/bash
改成
用户名:x:0:0:用户名,,,:/home/用户名:/bin/bash
修改完毕后保存然后重启系统,并仍然以原来的用户登陆,登陆后打开终端,如果提示符是#号,则代表成功
--------------------------------------------------------------------------------
安装工具链
apt-get install build-essential
--------------------------------------------------------------------------------
安装vmware tools(仅适用于虚拟机,真实机安装则无需此步骤)
以下仅以VMware Workstation 10.0.1 build-1379776来举例
虚拟机菜单里找到“安装Vmware Tools”选项,并选中
系统会自动加载光盘内容,把VMwareTools-9.6.1-1378637.tar.gz复制到任意文件夹
tar zxvf VMwareTools-9.6.1-1378637.tar.gz
cd vmware-tools-distrib
./vmware-install.pl
安装过程中全部默认即可,直接一路回车
如果不需要打印功能,则到此步骤时,回答no
Thinprint provides driver-free printing. Do you wish to enable this feature? 
[no]
完成后重启一次系统
--------------------------------------------------------------------------------
安装Beyond Compare依赖库(BC是32位软件,先安装这些32位依赖库,后面安装的64位依赖库即使有冲突也不影响)
apt-get install libX11-dev:i386 libxext6:i386 libXrender-dev:i386 libXcursor-dev:i386 libXinerama-dev:i386 libSM-dev:i386 libXrandr-dev:i386
apt-get install libxft2:i386 libfontconfig1:i386
--------------------------------------------------------------------------------
安装一般编译依赖库(仅适用于64位系统)
apt-get install libxml2-utils lzop
apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev openjdk-6-jre openjdk-6-jdk pngcrush schedtool libxml2 xsltproc
apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib

apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib

新系统可能会要求openjdk7,这里也给出安装命令,如果编译没有出错则可不安装

apt-get install openjdk-7-jre openjdk-7-jdk

--------------------------------------------------------------------------------
更换旧版gcc,以免编译android出错
cd /usr/bin
mv gcc gcc.bak 
mv g++ g++.bak
ln -s gcc-4.4 gcc
ln -s g++-4.4 g++
--------------------------------------------------------------------------------
安装python
apt-get build-dep python-imaging
apt-get install python-pip
pip install PIL
--------------------------------------------------------------------------------
安装sun java(CM或其它第三方系统使用openjdk就可以了,但编译AOSP可能会出错,当openjdk无法满足需求时,可进行此步骤)
这里以64位安装为例,自行下载jdk-6u45-linux-x64.bin,或http://download.csdn.net/detail/benjaminwan/7559125
放置到任意目录并打开终端,记得su取得权限
chmod +x jdk-6u45-linux-x64.bin
./jdk-6u45-linux-x64.bin
mv jdk1.6.0_45 /usr/lib/jvm/
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_45/bin/java 1
update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_45/jre/bin/javaws 1
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_45/bin/javac 1
update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.6.0_45/bin/jar 1
update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/jdk1.6.0_45/bin/javah 1
update-alternatives --install /usr/bin/javadoc javadoc /usr/lib/jvm/jdk1.6.0_45/bin/javadoc 1
update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javaws
执行3个config时,输入数字选择,一般选择最后一个
安装完成后,即可删除jdk-6u45-linux-x64.bin
--------------------------------------------------------------------------------
下载Android SDK Tools Linux
google下载页面:http://developer.android.com/sdk/index.html
google下载地址:http://dl.google.com/android/android-sdk_r23-linux.tgz
或者本人打包好的:
http://download.csdn.net/detail/benjaminwan/7560371
把下载好的压缩文档放到当前用户的用户文件夹,一般为/home/用户名
如果不知道在哪里,可以在命令行执行
cd ~
pwd
--------------------------------------------------------------------------------
安装Android SDK Tools Linux
以下A或B二选一

A.如果是打包配置好的:
7z x android-sdk-linux.7z
解压完即可删除android-sdk-linux.7z

B.如果是下载google官方的sdk包
tar zxvf android-sdk_r23-linux.tgz
解压完成后即可删除android-sdk_r23-linux.tgz

解压后的文件夹名称如果不是android-sdk-linux,则请改名
./android-sdk-linux/tools/android

设置代理(仅针对墙内无法直接连接的情况)
跳出的窗口,进入菜单Tools->Option
HTTP Proxy server:mirrors.neusoft.edu.cn
HTTP Proxy Por:80
勾选Force https://..sources to be fetched using http://..
关闭窗口
回到主界面后

勾选Tools下的三项:
Android SDK Tools
Android SDK Platform-tools
Android SDK Build-tools
然后按Install packages按钮,安装完后即可关闭窗口
--------------------------------------------------------------------------------
配置环境
注意:JAVA_HOME路径
如果是openjdk,那么路径为
JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
如果是自己安装的jdk1.6.0_45,那么路径为
JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
如果是其它情况,请自行确认路径

gedit ~/.bashrc
在底部另起新行,并加入如下内容

JAVA_HOME=路径(此处请自行修改确定)
export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

export PATH=~/android-sdk-linux/platform-tools:~/android-sdk-linux/tools:$PATH
重启系统后,打开命令行执行aapt v,如果显示
Android Asset Packaging Tool, v0.2
则代表安装成功
--------------------------------------------------------------------------------
安装adb工具
apt-get install android-tools-adb
--------------------------------------------------------------------------------
安装Beyond Compare破解版(http://download.csdn.net/detail/benjaminwan/7559281)
如果没有7z,则先安装7z
apt-get install p7zip
压缩文档复制到任意目录,在当前目录下打开命令行并解压缩
7z x bcompare-3.3.5.15075.7z
cd bcompare-3.3.5.15075
./keygen 
1. Do you want me to patch Beyond Compare?(y/n)y
2. Do you want me to generate a valid license?(y/n)y
2.a please give me your user name:xxx随意,只要不是中文就好
2.b please give me the number of licenses:(max 9999)9999
2.c please select the Platform(0,Windows;1,Linux;2,Linux/Windows):2
2.d please select the Edition(0,Pro;1,Standard):0
然后会生成key,把KEY的内容复制下来保存
--- BEGIN LICENSE KEY ---
这之间的内容复制保存
--- END LICENSE KEY -----
./install.sh
以命令行执行bcompare,并查看是否缺少依赖库,如果缺少,请按照提示补齐安装
bcompare
首次启动要求输入key,把上面保存的内容粘贴并确定,完毕,之后可以使用右键菜单进行对比。
--------------------------------------------------------------------------------
安装repo
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > /bin/repo
chmod a+x /bin/repo
--------------------------------------------------------------------------------
设置ramdisk(可以让编译更快,但此步骤不是必须,适用于大内存用户)

修改ramdisk大小(即/dev/shm)
gedit /etc/fstab
在底部增加一行
tmpfs /dev/shm tmpfs defaults,size=2048M,mode=1777 0 0
说明:2048m即代表划分2G运存给虚拟内存/tmp区,可依据实际PC机内存配置修改,4G内存可划分2G,8G内存可划分4G
注意:/tmp区太小时,如果空间不足造成编译或提取rom时出错,如果出错,可以用df -h这个命令查看/tmp空间是否足够

在/usr/bin下新增setramdisk.sh并给权限chmod a+x /usr/bin/setramdisk.sh
#! /bin/sh
mkdir /dev/shm/tmp
chmod 1777 /dev/shm/tmp
mount --bind /dev/shm/tmp /tmp

给执行权限
chmod a+x /usr/bin/setramdisk.sh

修改/etc/init.d/rc.local,让每次启动都自动挂载ramdisk
底部新增
/usr/bin/setramdisk.sh
--------------------------------------------------------------------------------
安装QQ(此步骤非必须)
apt-get install deepinwine-qqintl
--------------------------------------------------------------------------------
安装额外的文本编辑器(此步骤非必须,Deepin自带的为gedit,可以安装其它的编辑器以供多样化选择)
mousepad
apt-get install mousepad
leafpad
apt-get install leafpad
kate
apt-get install kate
--------------------------------------------------------------------------------
安装其它终端(此步骤非必须,Deepin自带的为深度终端,可以安装其它终端以供多样化选择)
gnome-terminal
apt-get install gnome-terminal
terminator
apt-get install terminator
xterm
apt-get install xterm
konsole
apt-get install konsole
--------------------------------------------------------------------------------

你可能感兴趣的:(android)