ubuntu下android编译环境搭建
2012-09-26 09:30
716 查看
dk1.5的源
deb http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty multiverse
deb-src http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty-updates multiverse
deb-src http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty-updates multiverse
2、$ sudo apt-get update
3、$ sudo apt-get install sun-java5-jdk 安装jdk1.5,然后检查jdk版本是否已经更新到1.5,$ java -version. 如果不是以下信息:
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_19-b02, mixed mode)
则需要手动修改jdk的链接:
cd /usr/lib/jvm
ls -l java*
先检查是否已经安装了jdk1.5,如下信息:
lrwxrwxrwx 1 root root 23 2011-01-25 17:13 java-1.5.0-sun -> java-1.5.0-sun-1.5.0.19
lrwxrwxrwx 1 root root 14 2011-01-12 23:18 java-1.6.0-openjdk -> java-6-openjdk
.....................
.....................
如果有jdk1.5,则进行如下步骤:
cd /etc/alternatives
ls -l java*
lrwxrwxrwx 1 root root 40 2011-01-26 08:48 java -> /usr/lib/jvm/java-1.5.0-sun/jre/bin/java
lrwxrwxrwx 1 root root 37 2011-01-25 17:13 javac -> /usr/lib/jvm/java-1.5.0-sun/bin/javac
lrwxrwxrwx 1 root root 47 2011-01-25 17:13 javac.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javac.1.gz
lrwxrwxrwx 1 root root 39 2011-01-13 17:57 javadoc -> /usr/lib/jvm/java-1.5.0-sun/bin/javadoc
lrwxrwxrwx 1 root root 49 2011-01-13 17:57 javadoc.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javadoc.1.gz
lrwxrwxrwx 1 root root 37 2011-01-13 17:57 javah -> /usr/lib/jvm/java-1.5.0-sun/bin/javah
lrwxrwxrwx 1 root root 47 2011-01-13 17:57 javah.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javah.1.gz
lrwxrwxrwx 1 root root 37 2011-01-13 17:57 javap -> /usr/lib/jvm/java-1.5.0-sun/bin/javap
lrwxrwxrwx 1 root root 47 2011-01-13 17:57 javap.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javap.1.gz
如果与以上ls的信息不符则做相应的修改。
4、安装其他必备的组件
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev java-common unixodbc
这里需要说明一下:由于10.10版本默认的gcc和g++版本是4.4,gcc4.4在编译Android2.2源码时有可能会报一些错误,可能是因为新版本对代码解析更加严格了吧。这时需要把gcc降到4.3,步骤如下:
sudo apt-get remove gcc-4.4(卸载gcc-4.4)
sudo apt-get remove g++-4.4(卸载g++-4.4)
sudo apt-get install gcc-4.3(安装gcc-4.3)
sudo apt-get install g++-4.3(安装g++-4.3)
cd /usr/bin
ln -s gcc-4.3 gcc
ln -s g++-4.3 g++
sudo apt-get install g++-multilib g++-4.3-multilib
cd /../myAndroidSrcDir/
make
2-3小时后
5、编译、配置Android SDK
make编译完成后,执行$sudo make sdk命令,生成对应于该版本源代码的sdk,此过程用的时间偶的是10多分钟。注意这个sdk不能用于生产环境。
用于生产环境的最好用如下命令: $sudo make PRODUCT-sdk-sdk命令,生成对应于该版本源代码的用于生产环境的sdk,此过程用的时间偶的是1个多小时。
Android官方的SDK和偶自己编译Android源码时使用make sdk编译出的SDK有区别,模拟器版本不同,加载的默认镜像也不同(一个是官方的, 一个是自己编译的)。下面将展示如何能够自由切换SDK版本。
首先是自己编译的SDK版本,实际位置是/root/mydroid/out/host/linux-x86/sdk/Android-sdk_eng.root_linux-x86。
因为它比较常用,我们给它高优先级:
update-alternatives --install /usr/bin/AndroidSDK AndroidSDK /root/mydroid/out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86
255
事先下载的官方SDK位置是/root/Android-sdk-linux_86,执行:
update-alternatives --install /usr/bin/AndroidSDK AndroidSDK /root/android-sdk-linux_86 0
然后使用update-alternatives --display AndroidSDK查看当前配置情况:
如果要切换配置,使用update-alternatives --config AndroidSDK
配置AndroidSDK环境变量。终端中执行gedit ~/.bashrc
在文件最后添加下面三行:
# set Android environment
export Android_SDK_HOME=/usr/bin/ AndroidSDK
export PATH=$Android_SDK_HOME/tools:$PATH
保存文件。在终端中执行source ~/.bashrc
6、在模拟器中运行编译的镜像
打开终端,执行Android脚本:
$Android
出现下图所示窗口:
选择左边第一项Virtual Devices,然后在右边选择New,新建一个AVD。
Name:AVD的名称,随便取,但只能包含字母和数字以及点、下划线和连字符, 这里取名test。
Traget:目标SDK版本,这里选自己编译的2.1-r1版Android SDK。
SD Card:SD卡。暂且不填,待需要时再设置。()
Skin:皮肤(模拟器屏幕分辨率)。
Hardware:使用默认即可
然后点Create AVD,就创建好了一个AVD。点击Start即 可启动模拟器,其运行的是自己编译的镜像。
若以后要再次启动此AVD,请在终端中运行:
emulator –avd test 或 者emulator @test
7、添加SD卡的方法
mksdcard -l mycard 100M F:/mysdcard.img 1.mksdcard命令在F盘下新建一个虚拟磁盘给模拟器用,文件名mysdcard后缀可以 自定义如mycard.tank。 2. 默认单位为k 这里我写的100M
转载自:http://blog.csdn.net/qclzdh/article/details/6281437
deb http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty multiverse
deb-src http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty-updates multiverse
deb-src http://us.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu.com/ubuntu/ jaunty-updates multiverse
2、$ sudo apt-get update
3、$ sudo apt-get install sun-java5-jdk 安装jdk1.5,然后检查jdk版本是否已经更新到1.5,$ java -version. 如果不是以下信息:
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02)
Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_19-b02, mixed mode)
则需要手动修改jdk的链接:
cd /usr/lib/jvm
ls -l java*
先检查是否已经安装了jdk1.5,如下信息:
lrwxrwxrwx 1 root root 23 2011-01-25 17:13 java-1.5.0-sun -> java-1.5.0-sun-1.5.0.19
lrwxrwxrwx 1 root root 14 2011-01-12 23:18 java-1.6.0-openjdk -> java-6-openjdk
.....................
.....................
如果有jdk1.5,则进行如下步骤:
cd /etc/alternatives
ls -l java*
lrwxrwxrwx 1 root root 40 2011-01-26 08:48 java -> /usr/lib/jvm/java-1.5.0-sun/jre/bin/java
lrwxrwxrwx 1 root root 37 2011-01-25 17:13 javac -> /usr/lib/jvm/java-1.5.0-sun/bin/javac
lrwxrwxrwx 1 root root 47 2011-01-25 17:13 javac.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javac.1.gz
lrwxrwxrwx 1 root root 39 2011-01-13 17:57 javadoc -> /usr/lib/jvm/java-1.5.0-sun/bin/javadoc
lrwxrwxrwx 1 root root 49 2011-01-13 17:57 javadoc.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javadoc.1.gz
lrwxrwxrwx 1 root root 37 2011-01-13 17:57 javah -> /usr/lib/jvm/java-1.5.0-sun/bin/javah
lrwxrwxrwx 1 root root 47 2011-01-13 17:57 javah.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javah.1.gz
lrwxrwxrwx 1 root root 37 2011-01-13 17:57 javap -> /usr/lib/jvm/java-1.5.0-sun/bin/javap
lrwxrwxrwx 1 root root 47 2011-01-13 17:57 javap.1.gz -> /usr/lib/jvm/java-1.5.0-sun/man/man1/javap.1.gz
如果与以上ls的信息不符则做相应的修改。
4、安装其他必备的组件
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev java-common unixodbc
这里需要说明一下:由于10.10版本默认的gcc和g++版本是4.4,gcc4.4在编译Android2.2源码时有可能会报一些错误,可能是因为新版本对代码解析更加严格了吧。这时需要把gcc降到4.3,步骤如下:
sudo apt-get remove gcc-4.4(卸载gcc-4.4)
sudo apt-get remove g++-4.4(卸载g++-4.4)
sudo apt-get install gcc-4.3(安装gcc-4.3)
sudo apt-get install g++-4.3(安装g++-4.3)
cd /usr/bin
ln -s gcc-4.3 gcc
ln -s g++-4.3 g++
sudo apt-get install g++-multilib g++-4.3-multilib
cd /../myAndroidSrcDir/
make
2-3小时后
5、编译、配置Android SDK
make编译完成后,执行$sudo make sdk命令,生成对应于该版本源代码的sdk,此过程用的时间偶的是10多分钟。注意这个sdk不能用于生产环境。
用于生产环境的最好用如下命令: $sudo make PRODUCT-sdk-sdk命令,生成对应于该版本源代码的用于生产环境的sdk,此过程用的时间偶的是1个多小时。
Android官方的SDK和偶自己编译Android源码时使用make sdk编译出的SDK有区别,模拟器版本不同,加载的默认镜像也不同(一个是官方的, 一个是自己编译的)。下面将展示如何能够自由切换SDK版本。
首先是自己编译的SDK版本,实际位置是/root/mydroid/out/host/linux-x86/sdk/Android-sdk_eng.root_linux-x86。
因为它比较常用,我们给它高优先级:
update-alternatives --install /usr/bin/AndroidSDK AndroidSDK /root/mydroid/out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86
255
事先下载的官方SDK位置是/root/Android-sdk-linux_86,执行:
update-alternatives --install /usr/bin/AndroidSDK AndroidSDK /root/android-sdk-linux_86 0
然后使用update-alternatives --display AndroidSDK查看当前配置情况:
如果要切换配置,使用update-alternatives --config AndroidSDK
配置AndroidSDK环境变量。终端中执行gedit ~/.bashrc
在文件最后添加下面三行:
# set Android environment
export Android_SDK_HOME=/usr/bin/ AndroidSDK
export PATH=$Android_SDK_HOME/tools:$PATH
保存文件。在终端中执行source ~/.bashrc
6、在模拟器中运行编译的镜像
打开终端,执行Android脚本:
$Android
出现下图所示窗口:
选择左边第一项Virtual Devices,然后在右边选择New,新建一个AVD。
Name:AVD的名称,随便取,但只能包含字母和数字以及点、下划线和连字符, 这里取名test。
Traget:目标SDK版本,这里选自己编译的2.1-r1版Android SDK。
SD Card:SD卡。暂且不填,待需要时再设置。()
Skin:皮肤(模拟器屏幕分辨率)。
Hardware:使用默认即可
然后点Create AVD,就创建好了一个AVD。点击Start即 可启动模拟器,其运行的是自己编译的镜像。
若以后要再次启动此AVD,请在终端中运行:
emulator –avd test 或 者emulator @test
7、添加SD卡的方法
mksdcard -l mycard 100M F:/mysdcard.img 1.mksdcard命令在F盘下新建一个虚拟磁盘给模拟器用,文件名mysdcard后缀可以 自定义如mycard.tank。 2. 默认单位为k 这里我写的100M
转载自:http://blog.csdn.net/qclzdh/article/details/6281437
相关文章推荐
- Linux开发环境搭建 三 (在Ubuntu上Android/Linux编译环境的准备)
- Ubuntu16.04下搭建开发环境及编译tiny4412 Android系统
- Android 源码编译环境搭建(64位Ubuntu)各种依赖包安装
- 如何搭建android的开发环境 虚拟机和ubuntu的安装与建立编译条件
- Ubuntu16.04下搭建开发环境及编译tiny4412 Android系统【转】
- Ubuntu搭建MTK Android源码编译环境搭建
- Android编译环境搭建-ubuntu下AndroidStudio安装
- Android系统编译环境搭建—Ubuntu14.04安装&root登录&Chromium root启动&安装配置交叉编译环境
- 如何搭建android的开发环境 虚拟机和ubuntu的安装与建立编译条件
- Ubuntu 15.10 搭建 全志A20 Android系统编译环境
- 在Ubuntu 12.04 64bit搭建Android编译环境后,重启卡住在Ubuntu logo,进不了图形界面
- Ubuntu上搭建android BSP的开发编译环境 && 设置定时编译任务
- 2016.09.15 Ubuntu14.04 Android编译环境搭建
- Ubuntu下Android源码编译及Eclipse开发环境搭建
- Android 编译环境配置搭建(Ubuntu 12.04)及环境导致编译错误QA
- 在Ubuntu 14.04(64bit)上搭建Android编译环境(通用版)
- ubuntu 14.04搭建android编译环境
- sdl2 for android ubuntu开发环境搭建记录,编译SDL2 on ubuntu 16.04 x64
- Android编译环境搭建-ubuntu虚拟机与主机共享文件夹