Welcome 微信登录

首页 / 操作系统 / Linux / Ubuntu 12.04 下编译OpenJDK 7问题

刚开始选择在Windows的Cygwin下编译,结果问题连连,两天都搞不定。只有换到Ubuntu下面。记录一下不过12.04的Ubuntu使用的是3.2的内核,而openJDK的hotspot的Makefile里面支持的内核没这么高,所以会遇到一些问题。所以个人建议还是用9或者10的Ubuntu版本。编译的过程不复杂:下载源代码。 按照README-builds.html里面ubuntu或者linux的步骤做就可以了。README-builds.html虽然很多,但是一定要看 了后,才可能成功编译。现在只列一下遇到的问题:1.刚开始会有很多的库没有,make sanity都过不了,按提示下载即可2.缺少drops文件(need access to drops.)。应该设置ALT_DROPS_DIR指向drops目录。所谓的drops目录就是包含了JAXP和JAX-WS源代码的目录。默认不包含在openJDK源代码中。可以手动去http://download.java.net/openjdk/jdk7/下载。另外,这个问题也可以不设置drops目录,而在编译是,使用:           make ALLOW_DOWNLOADS=true这样编译的时候,ant会自动去下载的3. OS Version is not supported因为3.2的内核不支持。这个问题可以引用网上的解答,修改hotspot/make/linux/Makefile,把3.2的内核加入到支持列表中即可:http://mail.openjdk.java.net/pipermail/porters-dev/2011-October/000367.html4.__LEAF redefined。由于g++的高版本中,增加了对__LEAF的定义,而openJDK源代码中也有__LEAF定义,于是重复。对于这个bug,有如下引用可以修改:http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot/rev/a6eef545f1a2要修改6个文件(我不会用hg,所以直接就把这6个文件用正确的替换掉了)5.undefined reference to `snd_pcm_format_mask_malloc"(很多undefined reference to `snd_****`)这貌似也是一个bug,链接的顺序不对,可以引用的方法:http://sunnycomputerlab.com/roller/sunny/entry/openjdk_compile_problem_on_ubuntu把lasound加入到extra_libs里面去即可6.另外,如果找不到shape.h,可以安装libxtst-dev,libxrender-dev, 还可能要更新freetype的版本,下载他的dev版本等等。挺多麻烦事,不过还好,几个小时过后还是编译出来了,兴奋啊。快速配置 Ubuntu + Eclipse CDT + Opencv2.3.1 环境Ubuntu 12.04 下Aptana Studio 3出现错误解决办法相关资讯      OpenJDK  Ubuntu OpenJDK  OpenJDK编译 
  • Ubuntu 16.04 编译 OpenJDK 8  (08月15日)
  • OpenJDK将对Android开发产生怎样的  (01月31日)
  • Ubuntu 14.04.3 64位环境下  (11/23/2015 10:43:14)
  • Linux服务器Oracle JDK与OpenJDK共  (05月23日)
  • OpenJDK 9:将会移除HPROF和jhat  (12/20/2015 10:20:35)
  • Oracle计划新的移动OpenJDK项目  (10/28/2015 19:50:27)
本文评论 查看全部评论 (0)
表情: 姓名: 字数