zoukankan      html  css  js  c++  java
  • 深入理解JVM(一)编译openJDK

    此文总结的很不错:https://www.cnblogs.com/ACFLOOD/p/5528035.html

    • 准备openJDK源码和环境

      1.在linux和macOS上编译openJDK更加友好,我是在linux上编译的;

      2.编译jdk有利于理解jvm的运行过程,下载openJDK:https://my.oschina.net/u/2518341/blog/1931088

      3.编译openJDK的过程也需要jdk,我编译的是openJDK 1.7,jdk我也是用的1.7;

      4.编译所需要的linux环境安装:

    sudo yum install build-essential gawk m4 libasound2-dev libcups-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev binutils libmotif3 libmotif-dev ant

      5.配置环境变量:vim /etc/profile

    #语言选择,必须配置
    export LANG=C
    
    #编译过程所依赖的jdk
    export ALT_BOOTDIR=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.191-2.6.15.4.el7_5.x86_64
    
    #允许自动下载依赖
    export ALLOW_DOWNLOADS=true 
    
    #并行编译的线程数 #export HOTSPOT_BUILD_JOBS=6 #export ALT_PARALLEL_COMPILE=6

    #使用预编译头文件,编译更快
    export USE_PRECOMPILED_HEADER=true

    #要编译的内容
    export BUILD_LANGTOOLS=true
    #export BUILD_JAXP=false
    #export BUILD_JAWS=false
    #export BUILD_CORBA=false
    export BUILD_HOTSPOT=true
    export BUILD_JDK=true

    #避免Javaws和Java插件之类的build
    BUILD_DEPLOY=false

    #避免build出安装包
    BUILD_INSTALL=false

    #编译结果的路径
    export ALT_OUTPUTDIR=/usr/local/openjdk/jdk-9b8c96f96a0f/build

    #另外,这两个必须配置上
    unset JAVA_HOME
    unset CLASSPATH

    配置好之后输入make sanity来检验是否正确

    • 编译

        输入"make"指令,需要一定的时间,最终编译出的源码在上面配置的ALT_OUTPUTDIR中。

      

  • 相关阅读:
    视频检索扫盲 (一)
    PPT计时器
    遇到的错误及解决方案
    SimpleDBM 组件分析 (二)
    Winform 窗口圆角实现
    SimpleDBM 组件分析 (一)
    转载:DataGridView 导出到 Excel中
    Winform隐藏标题栏后移动窗口
    Paper Reading:The Google File System(一)
    PDF C#操作
  • 原文地址:https://www.cnblogs.com/lcmlyj/p/9958781.html
Copyright © 2011-2022 走看看