Win10 Visual Studio2010编译JDK8诡异错误!!

Win10 Visual Studio2010编译JDK8诡异错误!!

前言

《深入理解Java虚拟机》(第三版)一书第一章实战部分就是手动编译JDK,相信读过的老铁萌都会想着动手去编译一下吧~

本质上编译JDK8就两个步骤configuremake两个步骤,但本人在make步骤中遇到一个诡异的报错信息?

报错
## Starting hotspo
make[2]: warning: -jN forced in submake: disabling jobserver mode.
INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
NMAKE : fatal error U1073: don't know how to make 'files\java\jdk1.7.0_80'
Stop.
make[3]: *** [Makefile:217: generic_build2] Error 2
make[2]: *** [Makefile:167: fastdebug] Error 2
make[1]: *** [HotspotWrapper.gmk:45: /cygdrive/d/Users/WSharkCoder/Desktop/jdk-jdk8-b120/build/windows-x86_64-normal-server-fastdebug/hotspot/_hotspot.timestamp] Error 2
make: *** [/cygdrive/d/Users/WSharkCoder/Desktop/jdk-jdk8-b120//make/Main.gmk:109: hotspot-only] Error 2
分析

报错信息提示:不知道如何去make 'files\java\jdk1.7.0_80'

其中 ‘file\java\jdk1.7.0_80’ 只有可能指代 BootJDK地址 /cygdrive/d/'Program Files'/Java/jdk1.7.0_80

BootJDK 地址通常在 configure 过程中指定:

bash ./configure
–with-boot-jdk=/cygdrive/d/‘Program Files’/Java/jdk1.7.0_80

那么问题大致就是无法正确识别BootJDK地址

至于到底是脚本无法识别BootJDK地址还是Make程序无法识别相应的BootJDK版本,本人也不大清楚~

解决

重新安装BootJDK在其他无空格路径下,如本人 D:\Users\WSharkCoder\Java\jdk1.7.0_80 路径下.

实际上本人也有尝试转义空格或加引号,但都解决不了

例如:

  1. 转义空格

    bash ./configure
    –with-boot-jdk=/cygdrive/d/Program\ Files/Java/jdk1.8.0_281
    –with-freetype="/cygdrive/d/Users/WSharkCoder/freetype"

    参考文献: https://blog.csdn.net/qq_17020781/article/details/81586192

  2. 加引号

    bash ./configure
    –enable-debug
    –with-target-bits=64
    –with-boot-jdk=/cygdrive/d/‘Program Files’/Java/jdk1.7.0_80
    –with-freetype=/cygdrive/d/Users/WSharkCoder/freetype \

重新 configuremake 就可以愉快的编译JDK了~


小小空格,可笑可笑55555555~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值