首页 > 开发 > 综合 > 正文

给jikes指定encoding属性的编译过程

2020-02-05 14:04:49
字体:
来源:转载
供稿:网友



jikes是一个比javac速度快的java编译器,它是ibm的一个开放源码项目

在一些application server运行时,我们为了提高运行的速度,会选择对jsp文件进行预编译,但是如果项目比较大的话,对于所有的jsp编译会花费很长的时间,所以这个时候需要选择一个快速的java编译器,据说symantec的sj速度最快,但是目前好像没有继续开发,不支持jdk1.4以上了,所以我们选择稍次之的jides编译器,不过jikes没有提供对win32平台的encoding属性的支持,在我们使用的时候一直被这问题所困扰,这个可以通过运行jikes help来查看。后来通过参考sourceforge中有关文章,才得以完成,原文地址http://jikes.sourceforge.net/faq/dev-win32.shtml。

这里想说说过程中碰到的一些问题

操作步骤

1。首先下载jikes的原码文件,目前最新好像是1。22,不过利用最新的编译出来的结果还是不能用,还没有发现问题所在,后来使用1.18版本编译结果ok,下载地址http://sourceforge.net/project/showfiles.php?group_id=128803,下载源码扩展名为tar.bz2的文件,保存路径c:/temp

2。下载编译环境,使用mingw+msys模拟编译环境,下载最新的mingw和msys包,下载地址http://sourceforge.net/project/showfiles.php?group_id=2435,下载完成首先安装mingw,然后安装msys,在安装的过程中会弹出终端窗口要求指定gcc.exe(在minggw的bin目录下)的路径,如果你的安装路径为c:/mingwstudio/mingw/bin,按照屏幕输入为unix格式c:/mingwstudio/mingw,完成msys环境和编译工具gcc的绑定。完成后就可以直接运行桌面上的msys的快捷方式进入模拟平台。

3。要编译jides首先要编译 libiconv  ,下载源码libiconv-1.8.tar.gz,假如保存路径为c:/temp,

则按照如下的操作步骤在msys环境中对libiconv  进行编译

$ tar xvzf /c/temp/libiconv-1.8.tar.gz$ mkdir libiconv-build$ cd libiconv-build$ ../libiconv-1.8/configure --enable-extra-encodings /--enable-static --disable-shared$ make$ cd ..

4。编译jikes源码,假定刚才下在的源码在c:/temp下,使用下面命令进行编译


$ tar xvjf /c/temp/jikes-1.18.tar.bz2$ mkdir jikes-build$ cd jikes-build$ ../jikes-1.18/configure /cppflags=-i/c/temp/libiconv-build/include /ldflags=-l/c/temp/libiconv-build/lib/.libs$ make
这里对源文中的cppflags,ldflags属性进行了修改,确保编译路径的正确。执行玩make后,你就有了一个自己的包括encoding属性的jikes.exe,可以从jikes-build/src底下获取,祝你好运。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表