1、下载mercurial,源码根目录有个文件README-builds.html,非常详细,可以参考
hg fclone http://hg.openjdk.java.net/jdk7/jdk7
2、要先安装OpenJDK6,记录一下安装的地方,在下面的环境变量里面会用到
我的是/usr/lib/jvm/java-1.6.0-openjdk-amd64/
3、安装JDK7所需要的依赖包
sudo apt-get build-dep openjdk-7
4、源码中有一个bug,需要修改一下,在编译时发现会与glibc中的一个定义冲突
src/share/vm/runtime/interfaceSupport.hpp:430:0: error: "__LEAF" redefined [-Werror]
/usr/include/x86_64-linux-gnu/sys/cdefs.h:44:0: note: this is the location of the previous definition
5、在编译时会遇到和"javax/sound/jsoundalsa"相关的一个错误,网上搜了一下这个貌似是openjdk的一个bug,有人提供了补丁http://mail.openjdk.java.net/pipermail/build-dev/2012-January/005382.html。只需要修改openjdk/jdk/make/javax/sound/jsoundalsa目录下的Makefile文件,找到LDFLAGS += -lasound
修改为:OTHER_LDLIBS += -lasound
6、设置如下环境变量
#!/bin/bash
export LANG=C
export ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk-amd64/
export ALLOW_DOWNLOADS=true
export USE_PRECOMPILED_HEADER=true
export SKIP_DEBUG_BUILD=false
export SKIP_FASTDEBUG_BUILD=true
export DISABLE_HOTSPOT_OS_VERSION_CHECK=true
export DEBUG_NAME=debug
unset CLASSPATH
unset JAVA_HOME
make sanity && make
然后执行了挺长一段时间,就生成了jdk7/build/linux-amd64,察看版本
openjdk version "1.7.0-internal-debug"
OpenJDK Runtime Environment (build 1.7.0-internal-debug-wz_2012_12_25_15_46-b00)
OpenJDK 64-Bit Server VM (build 21.0-b17-jvmg, mixed mode)
参考:
http://lc87624.iteye.com/blog/1542354
http://blog.csdn.net/kindazrael/article/details/7266314
如果只想单独编译hotspot,可以这样:
bash:~/mercurial/$hg clone http://hg.openjdk.java.net/jdk7/hotspot/hotspot
bash:~/mercurial/$cd hotspot/make
bash:~/mercurial/hotspot/make$LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk/ HOTSPOT_BUILD_JOBS=5 ARCH_DATA_MODEL=64 ALT_OUTPUTDIR=../../build/hotspot_debug make jvmg jvmg1 2>&1 | tee ../../build/hotspot_debug
分享到:
相关推荐
本指南将详细介绍如何在 Ubuntu 12.04 上安装 JDK 1.7。 #### 二、准备工作 在开始安装之前,请确保已更新系统,并安装了必要的依赖项。可以通过以下命令更新系统: ```bash sudo apt-get update sudo apt-get ...
4. **安装步骤**:文档详细介绍了在Ubuntu 12.04 64位系统上安装Android编译环境的步骤,包括操作系统的要求、内存和磁盘空间要求、编译工具的安装、JDK(Java开发工具包)的安装、以及对软件源的配置等。...
在本文中,我们将深入探讨如何在Ubuntu 12.04 LTS(长期支持版)上搭建完整的Android开发环境。Ubuntu作为一个流行的Linux发行版,为开发者提供了稳定且强大的平台,是许多程序员首选的操作系统。Android开发则需要...
1. Ubuntu版本选择:在编译Android源码时,选择Ubuntu 12.04.5 LTS版本,主要是因为它是Android官方编译推荐使用的系统版本。在文档中提到Ubuntu 14.04存在一些兼容性问题,比如vmware-tools安装后屏幕自适应问题、...
本文以A20处理器平台为例,详细介绍了如何在Ubuntu 12.04 LTS环境下搭建Android编译环境。 首先,我们要了解编译平台的选择。在这个案例中,编译平台采用了I7-4770四核处理器,16GB DDR3 1600MHz内存和500GB硬盘,...
根据提供的文件内容,本知识点将详细介绍全志Android编译服务器系统安装标准手册中的内容,重点关注Ubuntu Server 12.04 LTS的操作系统安装步骤。 1. **下载Ubuntu Server 12.04 LTS** - 访问Ubuntu官方网站并下载...
Android编译服务器系统安装标准手册(发布版)-Ubuntu12.04x64LTS_20130608-2_.pdf 全志的android编译服务器搭建手册需要用到的JDK
3. Ubuntu12.04静态ip的设置方法:在Ubuntu12.04中设置静态IP地址是一个常见的网络配置任务,使得每次启动时系统能够获得同一IP地址,这对于开发和调试环境非常重要。文档中提供了详细步骤,包括编辑/etc/network/...
首先,需要在计算机上安装 Ubuntu 12.04 LTS 64 位版本的操作系统。Ubuntu 是一款广泛使用的 Linux 发行版,它提供了丰富的开发工具和支持库,非常适合用于搭建高通平台下的编译环境。 ##### 2.2 安装必要软件包 ...
在这份笔记中,我们将使用 Ubuntu Linux 12.04 LTS 作为开发环境,并使用 Android 4.2.2 和 Linux 3.X 的源代码版本。我们将从构建编译环境开始,安装和配置 Android 开发环境,选择编译目标,执行编译,直到将编译...