浏览 3723 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-04-06
两年前,我是在32位中文版的Windows 2003 Server上安装的Bugzilla,版本好像是2.20 cn,我电脑上还保留着当时的安装程序,用的Active Perl 5.8.7,mysql 4.1。可这周,我们是打算在32位英文版的Windows 2003 Enterprise Server上安装,我把老的Active Perl 5.8.7软件安装上,在命令行输入ppm,结果发现没有任何反应,看来这个版本的Active Perl在32位英文版2003 Enterprise Server上不好用。于是,我去官方网站 http://www.activestate.com 下载了一个x86平台的最新版Active Perl,即 Active Perl 5.10。装上以后,果然好用了,在命令行输入ppm,可以打开一个GUI的Manager窗口,不过由于以前用的Active Perl 5.8.7是不带GUI管理界面的,是纯粹的命令行,所以,这次安装 Bugzilla所需的Perl模块就没有使用以前在命令行输入ppm rep add Bugzilla http://landfill.bugzilla.org/ppm的做法,而是直接在GUI Manager窗口中找到需要安装的Perl模块,直接install。 在GUI Manager中装完一部分Perl模块后,发现Bugzilla所需的Template-Toolkit、GD等几个模块在这里头找不到。在命令行中输入perl D:/bugzilla/checksetup.pl后,因为找不到这几个关键模块,安装无法继续下去,至少需要Template-Toolkit模块。于是,我只能用IE直接访问 http://landfill.bugzilla.org/ppm 站点,从上面下载了Template-Toolkit.ppd、GD.ppd、GDGraph.ppd、GDTextUtil.ppd文件,以及scripts目录和x86目录下的文件,都放到C:\根目录下,并按网站原来的目录结构放好。然后,在命令行中输入 ppm install Template-Toolkit.ppd,结果出错,出错信息提示我版本不支持,我猜应该是Active Perl版本的问题,因为以前用ActivePerl 5.8.7的时候到这个站点安装Perl模块没有任何问题。我打开Template-Toolkit.ppd文件,发现这么一句代码 <ARCHITECTURE NAME="MSWin32-x86-multi-thread-5.8" />,我猜这个应该就是表示这个ppd文件可以用哪个版本的ActivePerl来执行,所以我把5.8改成了现在用的5.10即<ARCHITECTURE NAME="MSWin32-x86-multi-thread-5.10" />,然后再次在命令行中输入 ppm install Template-Toolkit.ppd,并执行。这回果然这回通过了,没有报版本的错误,但出了一个新错误,提示Download of http://landfill.bugzilla.org/ppm/scripts/Template-Toolkit.tar.gz failed 的错。于是,我再回过来看Template-Toolkit.ppd文件,发现里面还有一行<INSTALL EXEC="PPM_PERL" HREF="scripts/install_tt2">install_tt2</INSTALL>,说明它执行了scripts目录下的install_tt2文件,打开这个文件,发现在第45行正好有个die语句die "Download of $remote failed" 输出的就是刚才那句错误提示语,我肯定是执行到这一行出的问题,而且下面紧接着有个判断语句 unless (is_success(getstore($remote, $file))),于是我直接把这两行代码注释掉,新写了一行直接调用getstore($remote,$file),再次执行ppm install Template-Toolkit.ppd,顺利通过!:)我依葫芦画瓢,把GD几个模块的安装也都搞定了。下面要执行checksetup.pl了。 在这之前,我安装了mysql4.1,并直接通过mysql administrator软件添加了bugs数据库,建了一个新用户bugs,并赋予了相应的权限。这些我都是直接在Mysql Administrator中操作的,不像有的文章说的那样用mysql命令行,反正两种方法都可以,看大家的习惯。要说一句的是bugzilla 2.20版本只能用mysql4.1数据库,不能用mysql5,否则执行checksetup.pl时会报找不到bugs@localhost 的错,真是郁闷阿,版本限制那么多。 接下来,我在命令行再次执行 perl D:/bugzilla/checksetup.pl,还是出错,这回是说Bugizlla/Template.pm的某行出错 Base class package "Template" is empty,查来查去也没查出什么原因,上google上一搜,发现原来是因为bugzilla 2.20必须用Active Perl 5.8.8来执行,不能用Active Perl 5.10,郁闷阿,又是一个版本限制。于是,把ActivePerl 5.10卸载了,到官方网站下了一个Active Perl 5.8.8 for windows x86。装了以后,再次执行perl D:/bugzilla/checksetup.pl,上帝啊~~~这次终于全部通过了,真是不容易啊。接下来修改localconfig文件,安装Apache2.2,修改httpd文件都很顺利了,修改的方法可以详见bugzilla官方网站的文章或者其他论坛的帖子,都说得很详细一致,这块是没有什么特殊要注意的。 重启了apache以后,在IE中输入http://localhost,终于出来了,一个大虫子的首页,哈哈,搞定!收工! 好了,周末先休息了,总的来说,对于我这个不懂Perl、不懂Linux的人,要在Windows上装一个Bugzilla真的不容易啊。心得就是bugzilla对配套软件的版本要求太严格了,而且官方的英文安装说明文档没有提到这点,让我这个门外汉第二次装 bugzilla的时候走了不少弯路。看来有时间的时候,我也要在家装一个linux玩一玩,多学习! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |