编译OpenJDK 1.7

来源:互联网 发布:米格31 知乎 编辑:程序博客网 时间:2024/04/29 23:49

系统是Ubuntu 11.04,只装了X server和awesome WM,遇到的问题包括一些X11的依赖缺失。

参考文档:http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html


第一步,获得源代码

http://download.java.net/openjdk/jdk7/

可能我的hg有问题或者是因为wall的原因,hg一直出错,abort: error: ''

后来放弃,下载了zip


第二步,make sanity

jdk源码中java文件的编译需要已安装jdk的支持,因此需要先export ALT_BOOTDIR=/usr/lib/jvm/java-6-sun-1.6.0.26/

接下来发现缺少ALSA,FreeType和CUPS

ALSA见上面官方文档

FreeType:sudo apt-get install libfreetype6 libfreetype6-dev

CUPS:sudo apt-get install libcups2 libcups2-dev

还遇到一个ant的问题,说我的ANT_VER=1.6.0,其实ant -version是1.8.1,搞了很长时间,后来新打开一个终端窗口就好了,囧


第三步,make

官方文档说了源码包里不包括jaxp和jaxws的源码,我用了make ALLOW_DOWNLOADS=true,官方推荐下载jaxp和jaxws的源码并设置ALT_DROPS_DIR

make过程中遇到一些与X11有关的问题:

1. /usr/bin/ld -lX11 not found, 

sudo apt-get install libx11-dev

2. X11/Intrinsic.h no such file or directory

sudo apt-get install libxt-dev

3. X11/extensions/shape.h

sudo apt-get install x11proto-xext-dev

还有类似的依赖问题到http://packages.ubuntu.com/search?suite=natty&section=all&arch=amd64&searchon=contents&keywords=xrender.h搜索并安装相应的package即可


OK,build成功,研究一下源码吧


原创粉丝点击