ubuntu Android环境的搭建及其shell执行脚本

来源:互联网 发布:java实现记事本功能 编辑:程序博客网 时间:2024/06/13 10:24
 

一.进入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 "#########################################################"