Perl 5.8.8 - テクノロジ・オタクなのかも・・・瀧(紅呪)'s Blog

カレンダー
<< 2009.1 >>
[日記]
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31


お品書き

コンテンツ

ツリー表示:開く | 閉じる


保存庫

ホットリンク

HOME / コンピュータTips / Solaris / コンパイル / Perl 5.8.8

Solaris 10で、Perl 5.8.8のコンパイル

Soalris10に入っている標準のPerlには、 どういうワケか、伝統的に正規表現系が怪しい動きをする。

このパッチは、「Out of memory!」を治すパッチ。

添付のファイルを実行して、下記のようになると、インストールされているPerlにはバグがある。

47
0.
1.
Out of memory!

どうやらSolarisで動かすときに発現するPerlの問題なのかわからないが、 いずれにしても、パッチを見れば分かるとおり、変数の初期化問題である。

とりあえずお友達が 作ったパッチを当ててみると再現はしないような気がする。

--- regcomp.c.orig      Tue Jun  5 00:52:28 2007
+++ regcomp.c   Tue Jun  5 00:53:31 2007
@@ -1810,6 +1810,8 @@
     r->subbeg = NULL;
     r->reganch = pm->op_pmflags & PMf_COMPILETIME;
     r->nparens = RExC_npar - 1;        /* set early to validate backrefs */
+    r->lastparen = 0;
+    r->lastcloseparen = 0;

     r->substrs = 0;                    /* Useful during FAIL. */
     r->startp = 0;                     /* Useful during FAIL. */

下記のスクリプトはconfigureだけを行うので、 エラーがないことを確認して、 make && make test && make installすると良い。

なお、64bitコンパイルが必要ない場合は、 下を見て、適当に編集するとよいでしょう。コメントアウトされている方が、 32bit版ね。

#!/bin/sh

rm -f config.sh Policy.sh
# for 32bit
#./Configure -des  -Dlibs='-lsocket -lnsl -ldl -lm -lc' \
#-Dperllibs='-lsocket  -lnsl -ldl -lm -lc' \
#-Doptimize='-xO3 -xspace -xildoff'

# for 64bit
rm -f config.sh Policy.sh
./Configure -des  -Dlibs='-lsocket -lnsl -ldl -lm -lc' \
-Dperllibs='-lsocket -lnsl -ldl -lm -lc' \
-Doptimize='-xO3 -xspace -xildoff' \
-Dccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO' \
-Duse64bitint=define \
-Duse64bitall=undef \
-Duselongdouble=undef \
-Dd_longlong=define \
-Dd_longdbl=define \
-Divtype='long long' \
-Dnvtype='double' \
-DOff_t='off_t' \
-Dprototype=define \
-Ddlsrc=dl_dlopen.xs \
-Ddlext=so \
-Dd_dlsymun=undef
添付ファイル: fileregcomp.c.patch 108件 [詳細] filebugcode.pl 135件 [詳細]

Get RSS

リンク集
ジャストプレイヤー株式会社
WikiPlus
Torrentan.net
人気blogランキング

Twitter
Fox Meter
Firefox3 Meter

Nakanohito

検索バー(内部検索)

※WikiPlusの内部検索ツールを利用しています。


最新情報
Copyright Kohju / TAKI, Yasushi http://kohju.justplayer.com/ - Design by Casafree.com