努力努力再努力xLg
前言
从今天起,准备了很久的JVM,慢慢的做好总结。嗯,从安装环境开始吧先。
编译环境说明
win10-
cygwin64位 (官网下载就行:cygwin ) -
freetype2.7 vs2010openjdk8
软件安装
首先安装好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.dll和freetype.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












网友评论