一.进入Ubuntu系统后设置,以及开发android环境的搭建
1.新装系统,应先对软件源进行更新。这样,当我们用到某些软件时,可以直接tab键补全想要安装的软件包名字,然后安装。
sudo apt-get update
2.安装一些开发android必要的软件
sudo apt-get install gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-4.1-multilib g++-4.1-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
部分软件功能:
GnuPG(GNU Privacy Guard或GPG)是一个以GNU通用公共许可证释出的开放源码用于加密或签名的软件
flex和bison都是词法分析器生成器,他们常常一起配合使用,使用它们可以生成解释器,编译器,协议实现等多种程序。
zip是一种文件压缩格式,这个软件一般是用于压缩出zip格式的文件。
gcc和g++,linux下的c和c++编译器。
其余的一些都是一些必要的库。
3.使/bin/sh只想bash
一般装完系统,默认的sh是指向dash的,dash也是shell脚本的一种,但是已经过时,现在基本所有的shell脚本都用bash解析器,所以我们将sh只想bash
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
ls /bin/sh -l即可查看到sh已经指向bash了
4.改变我们的gcc和g++版本,因为android环境需要特定的gcc和g++编译器。
cd /usr/bin/
ls -la | grep gcc
sudo ln -s x86_64-linux-gnu-gcc-4.1 x86_64-linux-gnu-gcc
sudo rm gcc
sudo ln -s gcc-4.1 gcc
ls -la | grep g++
sudo rm -rf ./g++
sudo rm -rf x86_64-linux-gnu-g++
sudo ln -s x86_64-linux-gnu-g++-4.1 x86_64-linux-gnu-g++
sudo ln -s g++-4.1 ./g++
gcc --version
g++ --version 即可查看gcc和g++版本已经是我们需要的版本4.1.3了。
5.交叉编译器arm GCC和JDK1.5的安装
因为我们要运行android程序的板子是采用arm体系结构的,处理器是arm的,所以我们需要arm GCC。
而JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。JAVA又是Android系统上层主要的编程语言,所以很重要。
sudo tar xzvf prebuilt-0f1763c.tar.gz -C /opt
sudo mv /opt/prebuilt-0f1763c/ /opt/arm-eabi-4.4.0/
sudo mv jdk-1_5_0_22-linux-amd64.bin /opt/
cd /opt
sudo chmod a+x jdk-1_5_0_22-linux-amd64.bin
sudo ./jdk-1_5_0_22-linux-amd64.bin
6.安装Wine1.2
wine是一款优秀的Linu系统平台下的模拟器软件,用来将Windows系统下的软件在Linux系统下稳定运行,可以运行许多大型Windows系统下的软件。
sudo apt-get install wine1.2
7.创建android编译环境配置脚本
sudo vim /etc/android.conf
将下面语句复制进android.conf
#android profile
JAVA_HOME=/opt/jdk1.5.0_22"
export JAVA_HOME
ANDROID_JAVA_HOME=/opt/jdk1.5.0_22
export ANDROID_JAVA_HOME
PATH=/opt/arm-eabi-4.4.0/bin:/opt/jdk1.5.0_22/bin:/opt/android_sdk_2.1/tools:/opt/wine-1.1.33/bin:$PATH
export PATH
当我们编译android软件时,需要先执行
source /etc/android.conf
以上所有的工作完成以后,我们开发android的环境就搭建完成了。
PS:关于android环境的搭建,我还写了个shell脚本将所有的操作集成在脚本中,并测试运行成功。我们只需./执行该脚本即可完成所有工作,很方便。o(∩_∩)o希望对大家有帮助。
个人觉得:我们常常做一些项目时,可以将其中一些繁琐易失误操作的执行过程,用一个脚本来描述,只需解析该脚本,即可完成我们之前那些繁琐的步骤,方便好用,节省时间。就比如说,我们的内核编译时,需要有Makefile来描述其编译过程一样,Makefile,shell等脚本的存在就是为了简化繁琐操作,提高项目执行效率的。
二.Shell 脚本如下,你只需复制脚本内容,到你创建的任意空文件如android-build.sh,执行chmod +x android-build.sh,然后./android-build.sh即可自动安装。注意,首先需将您搭建android环境所需的文件jdk-1_5_0_22-linux-amd64.bin和prebuilt-0f1763c.tar.gz放到ubuntu的$HOME目录(就是我们刚打开Terminal默认的当前目录)下您创建的子目录即可,这里我创建的是android_build目录。
#!/bin/sh
#################################################
# The program is to build android's environment #
#################################################
############################
# Version 1.0 by jian.kong #
############################
#####1.install the required software######
sudo apt-get install gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-4.1-multilib g++-4.1-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
#####2.make shell point to bash######
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
#####3.change the gcc from version 4.4.1 to version 4.1.3#########
cd /usr/bin/
ls -la | grep gcc
sudo ln -s x86_64-linux-gnu-gcc-4.1 x86_64-linux-gnu-gcc
sudo rm gcc
sudo ln -s gcc-4.1 gcc
ls -la | grep g++
sudo rm -rf ./g++
sudo rm -rf x86_64-linux-gnu-g++
sudo ln -s x86_64-linux-gnu-g++-4.1 x86_64-linux-gnu-g++
sudo ln -s g++-4.1 ./g++
#check the version of gcc and g++
gcc --version
g++ --version
cd ~/android_build
#####4.Install arm GCC and JDK1.5##########
sudo tar xzvf prebuilt-0f1763c.tar.gz -C /opt
sudo mv /opt/prebuilt-0f1763c/ /opt/arm-eabi-4.4.0/
sudo mv jdk-1_5_0_22-linux-amd64.bin /opt/
cd /opt
sudo chmod a+x jdk-1_5_0_22-linux-amd64.bin
sudo ./jdk-1_5_0_22-linux-amd64.bin
#####5.install Wine1.2#####
sudo apt-get install wine1.2
#####6.Create android build environment profile ########
echo "#android profile" > android.conf
echo >> android.conf
echo "JAVA_HOME=/opt/jdk1.5.0_22" >> android.conf
echo "export JAVA_HOME" >> android.conf
echo >> android.conf
echo "ANDROID_JAVA_HOME=/opt/jdk1.5.0_22" >> android.conf
echo "export ANDROID_JAVA_HOME" >> android.conf
echo >> android.conf
echo "PATH=/opt/arm-eabi-4.4.0/bin:/opt/jdk1.5.0_22/bin:/opt/android_sdk_2.1/tools:/opt/wine-1.1.33/bin:\$PATH" >> android.conf
echo "export PATH" >> android.conf
sudo mv android.conf /etc/
source /etc/android.conf
echo "#########################################################"
echo "# Oh, the android's environment has been build! ~o^_^o~ #"
echo "#########################################################"