如何在Ubuntu系统下搭建Android开发环境

本文记录了如何在Ubuntu 12.04(64bit)系统下搭建Andriod(安卓)开发环境。

1、安装jdk

首先是下载和安装jdk。可以直接去http://java.sun.com下载。我当时下载的版本是jdk-6u43-linux-x64.bin。

然后,可以把它放置在任何你喜欢的文件夹,建议把它放置到主文件夹(/home/你的名字)下。

接下来是安装jdk。我习惯性把把jdk安装在/opt下(其他目录也可以)。

cd ~
sudo chmod 755 jdk-6u43-linux-x64.bin
sudo -s ./jdk-6u43-linux-x64.bin /opt

一路回车,直到询问是否安装,输入yes回车(直接敲一个大写的A加回车更好)。

如果此命令执行完毕,安装目录并不是在/opt下,而是你自己的帐户目录下,请将整个文件夹移动到/opt 中,并给出适当的权限。

安装完毕,下面配置环境变量。

配置classpath,修改所有用户的环境变量:

sudo vi /etc/profile

在文件最后添加:

#set java environment
JAVA_HOME=/opt/jdk1.60_43
export JRE_HOME=/opt/jdk1.6.0_43/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

注意:以上jdk的版本号一定要与你实际安装的版本号一致。如果你的安装是版本不是jjdk1.6.0_43,那么上述所有相关的地方全部要改掉。这是基本常识,相信大家应该不会搞错!

2、安装一些必要的库

为了编译安卓程序,有一些编译工具和库必须安装。当然,你也可以暂时不装,等到系统提示时候再有选择性的安装。不过,我建议还是提前安装好以备使用。

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev libx11-dev libreadline5-dev libz-dev libgl1-mesa-dev

当然,本人也不确保上述命令所安装的工具能够满足所有人、所有场合的使用。万一装完上述命令之后,还是提示缺少工具,则可按照相应的提示信息单独补充安装该工具即可。比如,提示缺少libc6-dev-i386,则命令如下:

sudo apt-get install libc6-dev-i386

至此,安卓环境的准备工作基本搭建完成。剩下的就是去获取安卓源码,修改,编译等工作了,此处不做细述。


不过,当时本人在第一次编译的过程中,遇到了一个menuconfig无法显示的问题,顺便记录在此,以便后续查阅。

输入make命令提示以下信息:

menubox.c:(.text+0xe4c): undefined reference to `scrollok'
menubox.c:(.text+0x1002): undefined reference to `delwin'
menubox.c:(.text+0x100a): undefined reference to `delwin'
menubox.c:(.text+0x10a4): undefined reference to `wbkgdset'
menubox.c:(.text+0x10ab): undefined reference to `acs_map'
menubox.c:(.text+0x10b2): undefined reference to `waddch'
scripts/kconfig/lxdialog/menubox.o: In function `do_scroll':
menubox.c:(.text+0x55): undefined reference to `wrefresh'
scripts/kconfig/lxdialog/menubox.o: In function `print_arrows':
menubox.c:(.text+0x1a4): undefined reference to `wrefresh'
scripts/kconfig/lxdialog/menubox.o: In function `do_print_item':
menubox.c:(.text+0x3a9): undefined reference to `wrefresh'
scripts/kconfig/lxdialog/menubox.o: In function `print_buttons':
menubox.c:(.text+0x4b1): undefined reference to `wrefresh'
collect2: ld 返回 1
make[1]: *** [scripts/kconfig/mconf] 错误 1
make: *** [menuconfig] 错误 2

经过一番百度,发现这是因为缺少ncurses-devel 组件(menuconfig的显示程序)。解决办法很简单,直接安装一下这个组件就好。

sudo apt-get install libncurses5-dev

搞定!收工!

你可能感兴趣的:(玩转android)