windows7 x64 编译openjdk7

最近在windows7 x64位系统下面编译了一下openjdk7。在此做一个记录,避免以后忘了又到处找 ,也给需要编译的朋友一个参考,本文参考了http://weblogs.java.net/blog/simonis/archive/2011/10/28/yaojowbi-yet-another-openjdk-windows-build-instruction此篇博客

首先,从http://openjdk.org下载了最新的openjdk7 update版本,

第二,从http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express下载了visual studio 2010 express 和从http://www.microsoft.com/download/en/details.aspx?id=8279下载了 microsoft windows sdk for windows 7 and .net framework 4 和 Microsoft DirectX 9.0 SDK(Summer 2004);下载ant,freetype2.4.9 (关于freetype.lib和freetype.dll的获得上面博客有提到,里面说都了32位和64位分别获得的方式)安装cygwin (上文博客中提到的make在我的实验中在编译hotspot的时候会卡住不响应,)所以我下载了http://www.cmake.org/files/cygwin/make.exe 覆盖cygwin bin目录下面的make文件(建议备份),关于为什么不用cygwin自带的上文博客有提到,jdk自带的说明里面也有提到;再找一个jdk(用的是1.6_32)作为引导jdk。

第四,到此所有的需要的都准备好了:

   1.安装windows sdk 这个要先安装方便后面的设置

   2.安装express ,建议安装到C:\Program Files (x86)\Microsoft Visual Studio 10.0目录下面,原因同上

   3.安装dxsdk

   4.编译freetype2.4.9,我同时编译了32位的和64位的

   5.安装ant

   6.安装cygwin和覆盖make.exe

   7.安装jdk

接下来是设置环境变量,虽然可以使用SetEnv.bat自动设置,但是我发现自动设置的东西我不知道怎么把cygwin的bin目录放到path的最后面,所以我使用的是手动设置

注意:如果采用SetEnv.bat设置环境变量然后再设path=%path%;x:/cygwin/bin目录的方式在编译corba的时候是编译不通过的,会报File not found - *-template错误 ,具体为什么我也不清楚

为了以后编译方便,我做了两个bat文件,一个是32位的、一个是64位的,直接把bat文件放到openjdk目录就可以了

@echo off
rem call D:\jdkBuild\sdk\Bin\SetEnv.Cmd /Release /x64 /win7
SET WindowsSDKDir=
SET VSINSTALLDIR=C:/PROGRA~2/MICROS~1.0
SET WINDOWSSDKDIR=D:/jdkBuild/sdk
SET JAVA_HOME=
SET ALT_BOOTDIR=D:/jdkBuild/JDK16~1.0_X
SET ALT_JDK_IMPORT_PATH=D:/jdkBuild/JDK16~1.0_X
SET ANT_HOME=D:/jdkBuild/APACHE~1.4
SET ALT_MSVCRNN_DLL_PATH=D:/jdkBuild/msvcr100
SET ALT_DXSDK_PATH=D:/jdkBuild/msdxsdk
SET ALT_FREETYPE_HEADERS_PATH=D:/jdkBuild/freetype64/include
SET ALT_FREETYPE_LIB_PATH=D:/jdkBuild/freetype64/lib
SET ALT_COMPILER_PATH=%VSINSTALLDIR%/VC/bin/amd64
SET ALLOW_DOWNLOADS=true
SET ARCH_DATA_MODEL=64
SET PATH=%WINDOWSSDKDIR%/Bin/NETFX4~1.0TO/x64;%WINDOWSSDKDIR%/Bin/x64;%VSINSTALLDIR%/VC/bin/amd64;%VSINSTALLDIR%/Common7/IDE;E:/cygwin/bin;%PATH%
SET VS100COMNTOOLS=%VSINSTALLDIR%/Common7/Tools
SET INCLUDE=%VSINSTALLDIR%/VC/INCLUDE;D:/jdkBuild/sdk/INCLUDE
SET LIB=%VSINSTALLDIR%/VC/Lib/amd64;D:/jdkBuild/sdk/Lib/X64
rem SET NO_DOCS=true
rem SET BUILD_CORBA=false
rem SET BUILD_JAXWS=false
rem SET BUILD_JAXP =false
rem  make 2>&1 | tee make_64.log
bash
@echo off
rem call D:\jdkBuild\sdk\Bin\SetEnv.Cmd /Release /x32 /win7
SET WindowsSDKDir=
SET VSINSTALLDIR=C:/PROGRA~2/MICROS~1.0
SET WINDOWSSDKDIR=D:/jdkBuild/sdk
SET JAVA_HOME=
SET ALT_BOOTDIR=D:/jdkBuild/JDK16~1.0_X
SET ALT_JDK_IMPORT_PATH=D:/jdkBuild/JDK16~1.0_X
SET ANT_HOME=D:/jdkBuild/APACHE~1.4
SET ALT_MSVCRNN_DLL_PATH=D:/jdkBuild/msvcr100
SET ALT_DXSDK_PATH=D:/jdkBuild/msdxsdk
SET ALT_FREETYPE_HEADERS_PATH=D:/jdkBuild/freetype/include
SET ALT_FREETYPE_LIB_PATH=D:/jdkBuild/freetype/lib
SET ALT_COMPILER_PATH=%VSINSTALLDIR%/VC/bin
SET ALLOW_DOWNLOADS=true
SET ARCH_DATA_MODEL=32
SET PATH=%WINDOWSSDKDIR%/Bin/NETFX4~1.0TO;%WINDOWSSDKDIR%/Bin;%VSINSTALLDIR%/VC/bin;%VSINSTALLDIR%/Common7/IDE;E:/cygwin/bin;%PATH%
SET VS100COMNTOOLS=%VSINSTALLDIR%/Common7/Tools
SET INCLUDE=%VSINSTALLDIR%/VC/INCLUDE;D:/jdkBuild/sdk/INCLUDE
SET LIB=%VSINSTALLDIR%/VC/Lib;D:/jdkBuild/sdk/Lib
rem SET NO_DOCS=true
rem SET BUILD_CORBA=false
rem SET BUILD_JAXWS=false
rem SET BUILD_JAXP =false
rem  make 2>&1 | tee make_32.log
bash

  日志记录需要手动加到make后面

bat文件根据自己的需要文件安装目录手动更改

操作系统我是直接下了一个英文的更新,设置了语言格式为英语

现在所有的都设置好了,可以开始动手了编译了

注意:要使用管理员运行bat文件,而且在编译出impsrc文件夹后,要修改文件的权限,让everyone完全控制,建议直接修改impsrc的权限并让他下面的所有文件文件夹都继承他的权限,不然后面打包doc的时候要报错不能访问文件

好了,所有的准备工作都好了,开始编译吧

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值