美文网首页
猝死JVM--1_win10下构建HotSpot编译、调试工程-

猝死JVM--1_win10下构建HotSpot编译、调试工程-

作者: 小安的大情调 | 来源:发表于2019-12-29 04:15 被阅读0次

努力努力再努力xLg

前言

​ 从今天起,准备了很久的JVM,慢慢的做好总结。嗯,从安装环境开始吧先。


编译环境说明

  1. win10
  2. cygwin64位 (官网下载就行:cygwin
  3. freetype2.7
  4. vs2010
  5. openjdk8

软件安装

​ 首先安装好cygwin 64:这是一个模拟·Linux环境的。主要用于编译

在安装完之后,需要选择package安装。

链接:https://pan.baidu.com/s/10jDrgE-44M2jSCtkLPEGdA
提取码:6p84
复制这段内容后打开百度网盘手机App,操作更方便哦

最好是安装我提供的版本。因为有很多很傻逼的版本问题!!!

以下:是必须要安装的。

Binary Name Category Package Description
ar.exe Devel binutils The GNU assembler, linker and binary utilities
make.exe Devel make The GNU version of the ‘make’ utility built for CYGWIN
m4.exe Interpreters m4 GNU implementation of the traditional Unix macro processor
cpio.exe Utils cpio A program to manage archives of files
gawk.exe Utils awk Pattern-directed scanning and processing language
file.exe Base file Determines file type using ‘magic’ numbers
zip.exe Archive zip Package and compress (archive) files
unzip.exe Archive unzip Extract compressed files in a ZIP archive
free.exe System procps Display amount of free and used memory in the system
这里我直接点的下一步,默认选择的ALL。等待下载(千万不要选择ALL,因为这样会跳过很多必要的依赖导致编译JDK失败)

一定要按需选择安装!

​ 搜索安装

1577560367443.png 1577533278168.png 1577533661705.png

启动

1577533787201.png

cygwin的安装路径下bin目录配置到环境变量path

如我的安装路径为:D:\develop\cygwin64\bin

1577533969385.png

安装vs2010

这里一定要注意的是:安装路径一定要是英文,并且一定不要有空格

1577540204916.png

第一次打开VS2010请选择VC++

安装VS2010过程中需要注意的是,安装路径不要有空格。
1577557195937.png

编译freetype

​ 使用VS2010编译,选择解压好的freetype路径下的freetype.sln

具体路径:D:\develop\freetype\freetype-2.7\builds\windows\vc2010\
1577557441238.png 1577557607191.png

右键项目。选择Properties

1577557694719.png

想编译64位的openjdk,所以我这里需要64位的,在编译之前的检查中,我们不仅需要dll文件还需要lib文件,都是用同一个工程编译出的只是后缀不太一样。编译两次的时候只需要修改vs2010的配置后缀就OK了,注意在vs2010的配置选中,选择X64的,编译的时候,请右键项目,build

1577714427583.png 1577714512804.png

build

1577557996157.png

编译freetype.dll

1577714682299.png 1577558124390.png

BUILD

编译完后得到.lib.dll两个文件。在D:\develop\freetype\freetype-2.7\objs\vc2010\x64下。

1577558274617.png

然后咱们在D:\develop\freetype\freetype-2.7目录下创建lib文件夹,并将编译好的freetype.dllfreetype.lib复制到该目录。

在编译openjdk之前会校验并用到freetype下的include文件夹下的ft2build.h和lib文件夹下的freetype.dll和freetype.lib文件。(后面会说到编译前的校验,会提到使用这几个文件的地方)


将这连个路径设置到Path环境变量中。

1577558537935.png

编译openJDK

打开cygwin,切换到解压的openjdk_8的文件夹根目录

1577558788185.png

执行命令

./configure -with-freetype=/cygdrive/d/develop/freetype/freetype-2.7/ -enable-debug -with-target-bits=64 with_toolsdir="/cygdrive/d/develop/VS2010/VC/bin" --disable-ccache

妈妈鸭!!!终于编译好了

花了三天时间!!!

1577715437343.png

可以进行下面的make all的最后一步了。编译过程可能很久,就要看你的机器性能了。我的垃圾电脑用了快三个小时。Made Fucker

1577715945960.png 1577722475265.png

真TMD 傻逼!


1577561852046.png

这里提到的错误我都遇到了!

报错1:版本太老

​ 猜测是因为当时JDK8要求的版本是1.7存在的Bug,可以按照下面找到对应地方,修改成当前使用的cygwin的版本。或者将IF中的代码注释掉。

1577685675550.png 1577685775236.png
Could not succesfully extract the envionment variables needed for the VS setup.
1577686119711.png 1577713949768.png

日了🐶!!!!

参考:https://blog.csdn.net/ciqingloveless/article/details/81950308

相关文章

网友评论

      本文标题:猝死JVM--1_win10下构建HotSpot编译、调试工程-

      本文链接:https://www.haomeiwen.com/subject/ugoeoctx.html