ubuntu编译hotspot

前端之家收集整理的这篇文章主要介绍了ubuntu编译hotspot前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
最近在看《HotSpot实战》,学习JVM,按照书中的介绍,只需要编译openjdk中的hotspot子项目,由于其子项目过多,没必要都编译。

1、使用到的软件

  • ubuntu-14.04.5-desktop-i386.iso
  • apache-ant-1.9.0-bin.zip
  • jdk-7u7-linux-i586.tar.gz
  • openjdk-7u40-fcs-src-b43-26_aug_2013.zip
  • @H_404_13@

    2、下载依赖

    sudo apt-get install build-essential gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev binutils libmotif3 libmotif-dev ant libxt-dev libxtst-dev

    3、安装jdk、ant

    4、创建脚本文件make.sh

    进入openjdk/hotspot目录下,创建脚本文件并授予权限:chmod u+x make.sh

    #设置语言
    export LANG=C
    export ALT_BOOTDIR=/usr/java/jdk1.7.0_07
    #允许自动下载依赖包
    export ALLOW_DOWNLOADS=true
    #并行编译的线程数,设置为和cpu内核数量一直即可
    export HOTSPOT_BUILD_JOBS=6
    export ALT_PARALLEL_COMPILE_JOBS=6
    #使用预编译头文件,不加这个编译会更慢
    export USE_PRECOMPILED_HEADER=true
    #要编译的内容
    #export BUILD_LANGTOOLS=true
    #export BUILD_JAXP=true
    #export BUILD_JAXWS=true
    #export BUILD_CORBA=true
    #export BUILD_HOSTPOT=true
    #export BUILD_JDK=true
    #要编译的版本
    export SKIP_DEBUG_BUILD=false
    export SKIP_FASTDEBUG_BUILD=true
    export DEBUG_NAME=debug
    #把它设置为FALSE可以避免javaws和浏览器Java插件之类的部分build
    BUILD_DEPLOY=false
    #把它设置为false就不会build出安装包。因为安装包里有一些奇怪的依赖
    #但即便不build出它也已经得到完整的JDK镜像,所以还是不用build它
    BUILD_INSTALL=false
    #存放编译结果
    export ALT_OUTPUTDIR=/usr/java/openjdk1.7/build
    unset CLASSPATH
    unset JAVA_HOME
    #make sanity && make
    #"DEBUG_BINARIES=true"解决高版本的gcc不再支持编译选项stabs的问题
    #DEBUG_BINARIES=true make 2>&1 | tee $ALT_OUTPUTDIR/build.log
    cd make
    DEBUG_BINARIES=true make jvmg jvmg1 2>&1 | tee $ALT_OUTPUTDIR/build.log

    安装过程会遇到一些问题,可参考以下文章
    http://www.jackieathome.net/archives/395.html
    http://blog.csdn.net/my_computer/article/details/37879469
    http://www.cnblogs.com/dreamingodd/p/5827899.html
    http://www.cnblogs.com/zxfdream/p/5411511.html

猜你在找的Ubuntu相关文章