Windows XP でStrawberry Perl 5.10.1を使用してCPANから署名モジュールをインストールしようとすると、問題が発生するようです。
リンク中に「未定義の参照」エラーが発生します。私のB::Hooks::Parserモジュールに何か問題があると思いますが、それを再インストールしても問題は解決しませんでした。
出力は次のとおりです。
cpan シェル -- CPAN の探索とモジュールのインストール (v1.9452) ヘルプの「h」。 cpan> install signatures データベースは 2009 年 11 月 25 日水曜日 20:22:23 GMT に生成されました モジュール「署名」のインストールを実行しています F/FL/FLORA/signature-0.06.tar.gz の make の実行 C:\strawberry\cpan\sources\authors\id\F\FL\FLORA\signatures-0.06.tar.gz のチェックサム ok キャッシュ C:\strawberry\cpan\build のサイズをスキャンしています ................................................................... ..........................終わり CPAN.pm: F/FL/FLORA/signatures-0.06.tar.gz をビルドします lib/signatures.pm から perl のバージョン情報を特定できません キットが完成しているかどうかを確認しています... いいね 署名用の Makefile の書き込み cp lib/signatures.pm blib\lib/signatures.pm C:\strawberry\perl\bin\perl.exe "-Iinc" C:\strawberry\perl\lib\ExtUtils\xsubpp -typemap C:\strawberry\perl\lib\ExtUtils \typemap signatures.xs > signatures.xsc && C:\strawberry\perl\bin\perl.exe "-Iinc" -MExtUtils::Command -e "mv" -- signatures.xsc signatures.c gcc -c -IC:\strawberry\perl\site\lib\B\Hooks\OP\Check\Install -IC:\strawberry\perl\site\lib\B\Hooks\Parser\Install -IC: \strawberry\perl\site\lib\B\Hooks\OP\PPAddr\Install -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DUSE_SITECUSTOMIZE -DPERL_IMPL ICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX -s -O2 -DVERSION=\"0.06\" -DXS_VER SION=\"0.06\" "-IC:\strawberry\perl\lib\CORE" signatures.c 署名用の Mkbootstrap の実行 () C:\strawberry\perl\bin\perl.exe "-Iinc" -MExtUtils::Command -e "chmod" -- 644 signatures.bs C:\strawberry\perl\bin\perl.exe "-Iinc" -MExtUtils::Mksymlists \ -e "Mksymlists('NAME'=>\"署名\", 'DLBASE' => '署名', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" dlltool --def signatures.def --output-exp dll.exp g++ -o blib\arch\auto\signatures\signatures.dll -Wl,--base-file -Wl,dll.base -mdll -s -L"C:\strawberry\perl\lib\CORE" -L "C:\strawberry\c\lib" signatures.o -Wl,--image-base,0x121d0000 C:\strawberry\perl\lib\CORE\libperl510.a C:\strawberry\perl\site\lib\auto\B\Hooks\OP\Check\Check.a C:\strawberry\perl\site\lib\auto\B\Hooks\Parser\Parser.a C:\strawberry\perl\site\lib\auto\B\Hooks\OP\PPAddr\PPAddr.a C:\いちご\c\lib\libmoldname.a C:\いちご\c\lib\libkernel32.a C:\いちご\c\lib\libuser32.a C:\いちご\c\lib\libgdi32.a C:\いちご\c\lib\libwinspool.a C:\いちご\c\lib\libcomdlg32.a C:\いちご\c\lib\libadvapi32.a C:\いちご\c\lib\libshell32.a C:\いちご\c\lib\libole32.a C:\いちご\c\lib\lib oleaut32.a C:\いちご\c\lib\libnetapi32.a C:\いちご\c\lib\libuuid.a C:\いちご\c\lib\libws2_32.a C:\いちご\c\lib\libmpr.a C:\いちご\c\lib\libwinmm.a C:\いちご\c\lib\libversion.a C:\いちご\c\lib\libodbc32.a C:\いちご\c\lib\libodbccp32.a dll.exp signatures.o:signatures.c:(.text+0x23c):「hook_toke_skipspace」への未定義の参照 signatures.o:signatures.c:(.text+0x2b1):「hook_toke_skipspace」への未定義の参照 signatures.o:signatures.c:(.text+0x34b):「hook_toke_scan_word」への未定義参照 signatures.o:signatures.c:(.text+0x4b9):「hook_toke_skipspace」への未定義の参照 signatures.o:signatures.c:(.text+0x4e2):「hook_toke_scan_str」への未定義参照 signatures.o:signatures.c:(.text+0x4f5):`hook_parser_get_lex_stuff' への未定義参照 signatures.o:signatures.c:(.text+0x508):「hook_parser_clear_lex_stuff」への未定義参照 signatures.o:signatures.c:(.text+0x696):「hook_toke_skipspace」への未定義参照 signatures.o:signatures.c:(.text+0x6cd):`hook_parser_get_linestr' への未定義参照 signatures.o:signatures.c:(.text+0x8f2):`hook_toke_skipspace' への未定義参照 signatures.o:signatures.c:(.text+0x966):「hook_toke_scan_word」への未定義参照 signatures.o:signatures.c:(.text+0x9b3):「hook_toke_skipspace」への未定義の参照 signatures.o:signatures.c:(.text+0x9f7):`hook_toke_scan_str' への未定義参照 signatures.o:signatures.c:(.text+0xa0a):「hook_parser_get_lex_stuff」への未定義参照 signatures.o:signatures.c:(.text+0xa1d):「hook_parser_clear_lex_stuff」への未定義参照 signatures.o:signatures.c:(.text+0xda4):「hook_parser_setup」への未定義の参照 signatures.o:signatures.c:(.text+0xf89):`hook_parser_teardown' への未定義の参照 collect2: ld 1 つの終了ステータス dmake.EXE を返しました: 「blib\arch\auto\signatures\signatures.dll」の作成中のエラー コード 129 フローラ/署名-0.06.tar.gz C:\strawberry\c\bin\dmake.EXE -- OK ではありません make test の実行 make が成功しないとテストできません make install を実行すると Make が悪いステータスを返しました。インストールは不可能のようです このコマンド中に失敗しました: FLORA/signatures-0.06.tar.gz :NOにする
また、Parser.a ライブラリ (perl/site/auto/B/Hooks/parser 内) で「nm」を実行しましたが、「フック」を含むシンボルは見つかりませんでした。
他の誰かがこの問題を経験しましたか? または、署名モジュールのインストールに成功した人はいますか?