linux(Ubuntu)下编译openJDK
来源:互联网 发布:火车票中转查询软件 编辑:程序博客网 时间:2024/05/21 17:08
参考文章:
http://blog.csdn.net/u011521890/article/details/52197723
编译中出现的问题:
问题1:
[javac] /home/dream/jvm/openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java:2182: warning: [overrides] Class Resolve.InapplicableSymbolsError.Candidate overrides equals, but neither it nor any superclass overrides hashCode method [javac] private class Candidate { [javac] ^ [javac] error: warnings found and -Werror specified [javac] 1 error [javac] 1 warning
解决:由于编译的openjdk版本为1.7,但是bootstrap的jdk版本为1.8。只要将bootstrap的jdk版本改为1.7即可。
问题2:
cc1plus: error: the "stabs" debug format cannot be used with pre-compiled headers [-Werror=deprecate]
解决:因为高版本的gcc不再支持stabs,解决办法:在make命令中加上 DEBUG_BINARIES=true
问题3:
cc1plus all warnings being treated as errors
解决:打开 /hotspot/make/linux/makefiles/gcc.make
其中的Linux是对应的自己的操作系统
jdk1.7在127行,jdk1.8在207行(可能每个版本的不同,直接搜索WARNINGS_ARE_ERRORS 即可),注释掉:
WARNINGS_ARE_ERRORS = -Werror
问题4:
This OS is not supported: Linux ubuntu 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:09:55 UTC 2017 i686 i686 i686 GNU/Linux解决:修改 make/linux/Makefile,找到 SUPPORTED_OS_VERSION变量定义的地方,在后面追加 4%,如下所示
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 4%
问题5:
time is more than 10 years from present: 1136059200000
java.lang.RuntimeException: time is more than 10 years from present: 1136059200000
解决:网上写的是将 /jdk/src/share/classes/java/util/CurrencyData.properties文件的535 行的TR=TRL;2010-12-31-22-00-00;TRY时间该到距离现在10年以内,但是更改以后发现还是会出这个错,于是将CurrencyData.properties文件中所有的时间都更改到距离现在10年以内,再次编译时,发现没有报这个错误。
==============================================================
经过大约20分钟的编译,出现以下信息表示编译成功
========================================================================
修改openjdk源代码,参考:http://www.07net01.com/2015/08/913552.html,输出我们自己的版本信息。
配置环境变量,使用刚才编译好的jdk。在命令行输入java -version后,显示如下信息:
- linux(Ubuntu)下编译openJDK
- Ubuntu 下编译 openJDK
- Ubuntu 下编译OpenJDK,OpenJDk debug,OpenJDk fastdebug
- ubuntu下编译openJdk - 6
- Linux下编译openJDK源码
- Linux下编译OpenJdk实战
- Ubuntu 12.04 下编译OpenJDK 7问题
- Ubuntu编译openjdk
- winXP下编译openjdk
- CentOS7下编译openjdk
- ubuntu下编译openjdk 并在eclipse调试hotspot
- Linux 编译OpenJDK
- Ubuntu linux 更换openjdk
- Ubuntu kylin 14.04编译OpenJDK
- ubuntu 编译 openjdk - open jdk
- Ubuntu Server 16 编译OpenJDK
- [linux]ubuntu下卸载openjdk并安装sunjdk
- [linux]ubuntu下卸载openjdk并安装sunjdk
- 写在前面-第一篇csdn博客
- 第一个HelloWorld程序,遇到java.lang.RuntimeException: Unable to start activity ComponentInfo
- webservice--CXF+Spring整合发布SOAP协议的服务
- HTTP客户端识别与Cookie机制
- html学习第一天
- linux(Ubuntu)下编译openJDK
- js中创建对象的几种方式
- Delphi QuickReport 分组— QRGroup
- 网络爬虫到底是什么?
- 2 svn操作
- stl 应用 set
- 使用cmake自动构建工程
- 1041. 考试座位号(15)
- mysql日志分析工具-mysqldumpslow