Java虚拟机(HOTSPOT)源代码编译步骤

来源:互联网 发布:影子银行规模数据 编辑:程序博客网 时间:2024/04/29 10:26

概述

  1. hotspot源代码包含在openjdk7中

  2. openjdk7包含了jdk的Java代码,所以要用jdk6对这部分代码进行编译。(有点类似于gcc高版本代码要用gcc低版本编译一样)

准备

  1. openjdk 7 源代码
    http://pan.baidu.com/s/1c2lZ3Tu
    密码:2lvn
    强烈建议初学者,用这个jdk源代码,按照下面的教程配置。其他源代码编译时,可能会出现各种古怪问题

  2. 工作环境
    ubuntu 14.04


编译步骤

安装依赖项

sudo apt-get install build-essential gawk m4 openjdk-6-jdk libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev X11proto-print-dev binutils libmotifs3 libmotif-dev ant

解压缩openjdk源代码
我把它放到了 Home目录下面了
这里写图片描述


Hotspot编译前配置:
cd 进入openjdk源代码目录,切换root用户

su root

这里写图片描述

导入以下环境变量:

export LANG=Cexport ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk-i386export ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-6-openjdk-i386export ALLOW_DOWNLOADS=trueexport HOST_BUILD_JOBS=4export USE_PRECOMPILED_HEADER=trueexport BUILD_LANGTOOLS=trueexport BUILD_JAXP=trueexport BUILD_JAXWS=trueexport BUILD_CORBA=trueexport BUILD_HOTSPOT=trueexport BUILD_JDK=trueexport BUILD_INSTALL=falseexport ALT_OUTPUTDIR=/home/zxf/openjdk7/buildunset JAVA_HOMEunset CLASSPATHexport WARNINGS_ARE_ERRORS=falseexport SKIP_DEBUG_BUILD=falseexport SKIP_FASTDEBUG_BUILD=trueexport DEBUG_NAME=debug

ALT_OUTPUTDIR=/home/zxf/openjdk7/build,修改成你的openjdk7所在的路径的

ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk-i386,ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-6-openjdk-i386是java6的路径,一般不需要修改,装完 openjdk-6-jdk一般就在这个路径上

这里写图片描述

Hotspot编译前检查:

make sanity

这里写图片描述

按照上面环境变量配置后,make sanity 一般不会出问题


Hotspot编译:

make DEBUG_BINARIES=true

一定要加上DEBUG_BINARIES=true

半个小时基本就能搞定:
这里写图片描述


Hotspot编译后位置:
这里写图片描述

build和build-debug目录里面的东西就是啦

0 0
原创粉丝点击