`
李静波
  • 浏览: 53833 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

如何编译JVM

阅读更多
这里的JVM是指Sun以GPL开源的Hotspot JVM
 
在Sun提供的编译文档中说明需要使用MKS工具。现在MKS工具几乎无法搞到,于是我使用cygwin来替代。
 
编译步骤:
一、安装cygwin。假设cygwin安装在c:\cygwin。那么把c:\cygwin\bin加入环境变量PATH中。
        注:使用cygwin/MKS也主要使为了使用sh、cat、cp等Unix命令行工具。
 
二、打开VS2003命令行。(我使用VS2005编译没有成功,原因还没有去细查)
 
三、进入 \hotspot\build\windows 文件夹。
        在我的电脑上是: D:\temp\hotspot\build\windows
四、运行 build  A B C D<flavor></flavor><version></version><workspace></workspace><bootstrap_dir></bootstrap_dir>
        其中 <flavor></flavor>    A   可以是:product、debug、fastdebug
                  <version></version>   B  可以是: core、compiler1、compiler2
                  <workspace></workspace>   C 是 jvm源码的根目录
                     D <bootstrap_dir></bootstrap_dir>是 JDK的根目录
    例如在我电脑上,我是这样编译的:build product core D:\temp\hotspot C:\Java\jdk1.5.0_08
 
    其中关于JDK的目录需要注意的是不要包含空格,例如默认安装:C:\Program Files\Java\jdk1.5.0_08,就会使编译失败。
    所以我把JDK安装在了C:\Java\jdk1.5.0_08
分享到:
评论

相关推荐

    下载 java JVM INSTR 反编译

    提供的压缩包文件名称列表似乎并不直接关联Java JVM INSTR反编译,它们可能是一个软件安装包的一部分,如_SETUP.DLL和SETUP.EXE通常是Windows安装程序的相关文件,而Readme.html可能是包含软件说明的文档。...

    xgboost jvm下编译好的

    在这个目录下,XGBoost提供了`build.sh`脚本来编译JVM包。执行以下命令开始编译过程: ```bash ./build.sh ``` 编译过程中,脚本会自动处理C++部分的编译,并生成Java和Scala接口的JAR包。完成后,JAR文件将位于`...

    JAVA文件编译执行与虚拟机(JVM)介绍

    ### JAVA文件编译执行与虚拟机(JVM)介绍 #### 关键知识点概述: 1. **JAVA文件的编译与执行**:JAVA程序首先通过编译器转换为中间代码(字节码),然后由JVM解释执行。 2. **JVM的角色与功能**:JVM作为JAVA程序...

    jvm解析编译过的class文件

    Java虚拟机(JVM)是Java程序运行的基础,它负责解析和执行编译后的.class文件。这个过程涉及多个阶段,包括加载、验证、准备、解析和初始化。在本篇文章中,我们将深入探讨JVM如何解析并执行这些编译过的类文件。 ...

    动态编译字符串成java,并且添加class到jvm

    在Java编程中,动态编译字符串成Java代码并将其加载到JVM(Java虚拟机)是一种高级技巧,常用于运行时代码生成、元编程或插件系统等场景。这一技术的核心在于利用Java的反射API和Java Compiler API。下面将详细阐述...

    推荐一些JVM原理,JVM调优,JVM内存模型,JAVA并发 电子书1

    JIT编译是JVM中的一个关键特性,它通过即时编译技术将Java字节码动态编译成本地代码,提高程序的执行速度。这个过程包括解释执行和JIT编译,解释执行快速启动但效率低,JIT编译优化了运行效率但启动较慢。 总的来说...

    xgboost 在ubuntu上安装,并编译好jvm-packages

    2017年11月2号晚上下载的最新版本的xgboost, ubuntu中编译好的,jvm packages编译好的,生成的jar包在jvm-packages下对应的target文件夹下

    xgboost 编译好的 jvm

    上传错了,不能删除,不要审核通过啊。。。。。。。。。。。。

    jvm指令手册 +JVM必知必会,掌握虚拟机编译过程.rar

    JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 引入Java语言虚拟机后,Java语言在不同平台...

    jvm.go:用Go编写的玩具JVM

    编译jvm.go git clone https://github.com/zxh0/jvm.go.git cd jvm.go go build github.com/zxh0/jvm.go/cmd/java 使用Java安装运行jvm.go 检查您的Java版本,并确保已设置JAVA_HOME env ./java -XuseJavaHome -...

    jdk,jvm源码

    4. 执行引擎:解释器负责逐条解释执行字节码,而即时编译器(JIT)会将热点代码编译成本地机器码,以提高运行效率。 5. 内存管理:JVM的垃圾回收机制自动管理内存,包括对象的分配和回收。常见的垃圾收集算法有标记...

    jvm 详细介绍,了解jvm各个组成部分和功能

    不同于 C/C++ 这类需要针对不同平台进行编译的语言,Java 采用了一种更为灵活的方式:将 Java 源代码编译为字节码(Bytecode),这种字节码可以在任何安装了 JVM(Java 虚拟机)的平台上运行。这种方式确保了 Java ...

    jvm 启动过程 JVM 原理

    Java虚拟机(JVM)是Java程序运行的基础,它是一个抽象的计算机系统,负责执行Java字节码。本文将深入探讨JVM的启动过程及其基本原理。 首先,我们需要理解JVM的基本概念。JVM是Java Virtual Machine的缩写,它是...

    JVM图解-JVM指令-JVM原型图.rar

    - 类似于HotSpot JVM的即时编译(JIT)技术,将频繁执行的字节码编译成机器码,以提高性能。 - 垃圾收集参数调整,例如设置新生代和老年代的比例,以优化不同应用的内存需求。 - 栈帧优化,如逃逸分析,帮助确定...

    JVM 输出 GC 日志导致 JVM 卡住

    同时,作者还配置了 JVM 日志,包括 GC 日志、JIT 编译日志和 Safepoint 日志。然而,在这样做之后,作者的应用出现了奇怪的问题,表现为处于安全点的时间特别长。 作者通过分析 Safepoint 日志和 GC 日志,发现了...

    SAP JVM 8.1 64 bits

    - `buildinfo.txt`:提供了关于构建过程的信息,如编译日期、版本号等,有助于诊断问题或确定软件的构建状态。 - `src.zip`:包含了源代码,允许开发者查看和分析SAP JVM的实现细节,便于调试和学习。 - `bin`:...

    狂神说JVM探究.rar

    - JVM在运行过程中,将频繁执行的热点代码编译成机器码,提高执行效率。 10. **异常处理**: - JVM如何处理运行时异常,如栈展开(Stack Unwinding)过程。 这些知识点覆盖了JVM的基础到进阶内容,适合初学者和...

    JVM中文指令手册.pdf

    在JVM上运行的Java程序会被编译成一系列指令,然后由JVM执行。 从给定文件的【部分内容】可以提炼出以下知识点: 1. JVM指令类型:JVM指令可以分为不同类型,包括将常量推送到操作数栈的指令(const系列指令),...

    编译调试jvm, openjdk8源码, openjdk7, make3.81源码

    在IT领域,特别是Java开发中,理解JVM(Java虚拟机)的工作原理并能对其进行编译和调试是一项高级技能。本资源包包含了与这个主题相关的关键元素:OpenJDK8和OpenJDK7的源码,以及make 3.81的源码,这些都是构建和...

Global site tag (gtag.js) - Google Analytics