随笔 - 32, 文章 - 1, 评论 - 5, 引用 - 0
数据加载中……

安装perl的crc32模块

因为要写一个相关的perl脚本,需要crc32函数,默认的perl又不带,没办法只好安装一个:

  1. 下载:
    wget -c http://search.cpan.org/CPAN/authors/id/S/SO/SOENKE/String-CRC32-1.4.tar.gz
  2. 安装:
    tar zxvfp String-CRC32-1.4.tar.gz
    cd String-CRC32-1.4
    perl Makefile.PL
    make
    make test #这里没什么提示错误就恭喜了:)
    make install
  3. 使用(来自官方):

      use String::CRC32;

      
$crc = crc32(“some string”);
      
$crc = crc32(“some string”, initvalue);

      
$somestring = “some string”;
      
$crc = crc32($somestring);
      
print $crc.\n”;

      
#open(SOMEFILE, “location/of/some.file”);
      #$crc = crc32(*SOMEFILE);
      #close(SOMEFILE);

  1. 运行:
    perl t.pl
    4182587481

系统要部署到AIX平台

问题:
make编译报错,提示:cc_r not found!编译器找不到?那就手动指定一下,cc_r应该是在/usr/vac/bin目录下。
#vi MakeFile 找到CC = cc_r 改成 /usr/vac/bin/cc_r,然后执行make
提示: The license for the Evaluation version of IBM XL C/C++ for AIX, V10.1 compiler product has expired. 我去!过期了。。。这家伙还没免费的。。

另找办法,cc_r不让用就用gcc吧。
AIX Toolbox download:http://www-03.ibm.com/systems/power/software/aix/linux/toolbox/download.html 中免费下载。
傻瓜式安装 #
rpm –ivh gcc-4.2.0-3.aix5.3.ppc.rpm 
把cc_r替换为gcc,执行make编译。报错一大堆,各种的编译选项类型不符。


解决方案
网上搜的:

现在AIX自带的perl实例因为不是用gcc编译的,所以不可以在其基础上用gcc编译安装相关模块;

需要从网上下载perl的源代码,使用gcc编译安装一份新的perl实例;

现在AIX自带的perl实例因为不是用gcc编译的,所以不可以在其基础上用gcc编译安装相关模块;

需要从网上下载perl的源代码,使用gcc编译安装一份新的perl实例;


那就去perl下最新的源码包吧,http://www.perl.com/
指定编译器和目录 #sh Configure -de -Dcc=gcc –Dprefix=/opt/perl-5.10
#make
#make install

设置PATH环境变量:export PATH=/opt/perl-5.10/bin:$PATH (注意把新的perl实例的bin路径设置在前面,是因为系统中原有的perl实例还存在,可以做到优先使用新的perl实例)
#perl -version 确认一下最新的版本

然后再去编译String-CRC32吧
#perl MakeFile.pl
#make
#make install

安装完成,测试成功。这一大圈绕的。

posted on 2010-11-29 16:41 colorfire 阅读(2234) 评论(0)  编辑  收藏 所属分类: 脚本语言


只有注册用户登录后才能发表评论。


网站导航: