1  ,下载源代码  nuget

2,说明文档

http://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html

2,安装 Cygwin

http://www.cygwin.com/

输入源 :

http://mirrors.163.com/cygwin/https://mirrors.163.com/.help/cygwin.html

3, 转换文件格式

find common/autoconf/ -name "*" | xargs dos2unix

bash ./configure --enable-debug --with-target-bits=64  --with-freetype=/cygdrive/c/freetype-2.9.1  --with-tools-dir="/cygdrive/C/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin"

bash ./configure --enable-debug --with-target-bits=64  --with-freetype=/cygdrive/c/freetype-2.9.1

完成

JVM VS 项目生成

https://www.jianshu.com/p/5a5eaff760dd

调试

https://www.jianshu.com/p/e85f93cc74cb

-Djava.class.path=C:\JavaCode Test1

├─agent                            Serviceability Agent的客户端实现

├─make                             用来build出HotSpot的各种配置文件

├─src                              HotSpot VM的源代码

│  ├─cpu                            CPU相关代码(汇编器、模板解释器、ad文件、部分runtime函数在这里实现)

│  ├─os                             操作系相关代码

│  ├─os_cpu                         操作系统+CPU的组合相关的代码

│  └─share                          平台无关的共通代码

│      ├─tools                        工具

│      │  ├─hsdis                      反汇编插件

│      │  ├─IdealGraphVisualizer       将server编译器的中间代码可视化的工具

│      │  ├─launcher                   启动程序“java”

│      │  ├─LogCompilation             将-XX:+LogCompilation输出的日志(hotspot.log)整理成更容易阅读的格式的工具

│      │  └─ProjectCreator             生成Visual Studio的project文件的工具

│      └─vm                           HotSpot VM的核心代码

│          ├─adlc                       平台描述文件(上面的cpu或os_cpu里的*.ad文件)的编译器

│          ├─asm                        汇编器接口

│          ├─c1                         client编译器(又称“C1”)

│          ├─ci                         动态编译器的公共服务/从动态编译器到VM的接口

│          ├─classfile                  类文件的处理(包括类加载和系统符号表等)

│          ├─code                       动态生成的代码的管理

│          ├─compiler                   从VM调用动态编译器的接口

│          ├─gc_implementation          GC的实现

│          │  ├─concurrentMarkSweep      Concurrent Mark Sweep GC的实现

│          │  ├─g1                       Garbage-First GC的实现(不使用老的分代式GC框架)

│          │  ├─parallelScavenge         ParallelScavenge GC的实现(server VM默认,不使用老的分代式GC框架)

│          │  ├─parNew                   ParNew GC的实现

│          │  └─shared                   GC的共通实现

│          ├─gc_interface               GC的接口

│          ├─interpreter                解释器,包括“模板解释器”(官方版在用)和“C++解释器”(官方版不在用)

│          ├─libadt                     一些抽象数据结构

│          ├─memory                     内存管理相关(老的分代式GC框架也在这里)

│          ├─oops                       HotSpot VM的对象系统的实现

│          ├─opto                       server编译器(又称“C2”或“Opto”)

│          ├─prims                      HotSpot VM的对外接口,包括部分标准库的native部分和JVMTI实现

│          ├─runtime                    运行时支持库(包括线程管理、编译器调度、锁、反射等)

│          ├─services                   主要是用来支持JMX之类的管理功能的接口

│          ├─shark                      基于LLVM的JIT编译器(官方版里没有使用)

│          └─utilities                  一些基本的工具类

└─test                             单元测试

http://hllvm.group.iteye.com/group/topic/26998

常见错误

1,

Vi 下显示

^M

VS 看到的

2,VS 2010用英文的  ,用中文的有些问题,没深究,换也英文的

参考:

http://www.cnblogs.com/lighten/p/5906359.html

https://my.oschina.net/langxSpirit/blog/1624428

Build OpenJdk的更多相关文章

  1. Tilera 服务器上OpenJDK的安装尝试

    一.起因 这两天比较有意思,客户那里的代码遇到了一个jvm的bug崩溃了,所以老板让我升级JVM,这是一个处理器架构和x86不同的处理器,我改怎么安装呢? 我百度了OpenJDK,并且按照http:/ ...

  2. 乘风破浪,Java遇见OpenJDK GA(Build By Microsoft),即将晋升为Azure云管理服务默认JVM

    什么是Microsoft Build of OpenJDK Java Development Kit (JDK) 是Sun公司(已被Oracle收购)针对Java开发员的软件开发工具包.自从Java推 ...

  3. CentOS 6.5移除openJDK及JDK安装环境变量配置及JDK版本切换

    一.查找已经安装的open JDK [root@localhost ~]# rpm -qa|grep jdk java--openjdk-.el6_3.x86_64 java--openjdk-1.7 ...

  4. OpenJDK 编译-Linux环境

    说明:笔者是在Ubuntu 16.04虚拟机中编译 OpenJDK 8 源码下载 http://download.java.net/openjdk/jdk8/ 推荐直接下载openjdk-8-src- ...

  5. Linux服务器oraclejdk与openjdk共存并配置JavaEE开发环境

    由于本人学业的需要,需要在linux中搭建JavaEE开发环境,与windows的同学协同开发. JDK 由于fedora默认使用openjdk,移除多多少少会出现点问题,由于很多开源软件默认使用到它 ...

  6. Linux 下编译openjdk

    操作系统ubuntu14.04 openjdk版本 7u4 openjdk7u4可以在https://jdk7.java.net/source.html下载   一.构建编译环境 sudo apt-g ...

  7. centos7删除自带openjdk

    一些开发版的centos会自带jdk,我们一般用自己的jdk,把自带的删除.先看看有没有安装java -version [root@java-test-01 ~]# java -version ope ...

  8. openjdk 完全编译指南

    从openjdk.java.net下载openjdk的软件包,你就获得了所有相关的源码. 强烈建议首先仔细看懂 README-builds.html 指南. 在执行 make all 之前,首先要 执 ...

  9. CentOS卸载OpenJDK并安装Sun JDK

    第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java versi ...

随机推荐

  1. tflite笔记

    固化模型 方法一:freeze_graph方法 把tf.train.write_graph()生成的pb文件与tf.train.saver()生成的chkp文件固化之后重新生成一个pb文件 with ...

  2. 如何在MYSQL下所有指定数据库名下执行SQL

    mysql下用户库比较多,都有统一的命名格式,希望在这些所有用户库执行脚本,更新数据,或者查询数据 可以采用以下存储过程实现 DROP PROCEDURE IF EXISTS `sp_execalld ...

  3. Python处理微信利器——itchat

    接触itchat是一个偶然,上知乎刷出一个有意思的文章.于是乎运行源码,调错加上查阅博客,发现itchat大有可为. 知乎链接:https://zhuanlan.zhihu.com/p/2578293 ...

  4. vue中$route 和$router的区别

    在vue中会出现一种情况 const url=this.$route.query.returnURL; this.$router.push(url);    $router和$route的区别傻傻的分 ...

  5. Vue上传文件:ElementUI中的upload实现

    一.上传文件实现 两种实现方式: 1.直接action <el-upload  .利用before-upload属性 此种方式有个弊端,就是action是必选的参数,那么action如果和pos ...

  6. hdu2504

    代码一: //这个没有过 #include<stdio.h> //typedef long long ll; int main() { int T; scanf("%d" ...

  7. [ 9.12 ]CF每日一题系列—— 960B暴力数组

    Description: 给你两个数组,顺序一定,问你第一个数组连续的几个值等于下一个数组连续的几个值,然后寻找这个值得最大值,也就是满足就换 Solution: 用两个变量索引,判断即可 #incl ...

  8. js获取元素下标

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...

  9. NTP 服务器搭建

    FROM:http://blog.sina.com.cn/s/blog_511b46d10100agzf.html 配置环境: 1. 假设在 192.168.0.0 网段内,要以IP为 10.233. ...

  10. day05_雷神_函数进阶

    #day05 1.迭代器 1.1可迭代对象 str,list,tuple,dict,set,range,文件句柄 等都是可迭代对象 第一种方法:在该对象中,含有__iter__方法的就是可迭代对象,遵 ...