わたなべです。
藤岡和夫 <kazuf@...> writes:
> ld --base-file Dumper.base --dll -o Dumper.dll Dumper.o init.o fixup.o -L../..
> -L/gnuwin32/H-i386-cygwin32/i386-cygwin32/lib -lperlexp -lcygwin -e _dll_entry@...
> 2
> ld: cannot find -lperlexp
> system() failed.
> make[1]: *** [../../../lib/auto/Data/Dumper/Dumper.dll] Error 1
> make[1]: Leaving directory `/tmp/perl5.005_04/ext/Data/Dumper'
> make: *** [lib/auto/Data/Dumper/Dumper.dll] Error 2> --
>
> これは通るのかなと思ったのですが、残念ながら止まってしまいました(;_;)
ここは最初からオリジナルに存在するバグです。たぶんCygwin対応
のマージ作業に失敗したんだと思います。
> ld: cannot find -lperlexp
>
> になぜなるのかわかりません。一つ前の同様の処理ではうまく動いています。
なぜかというとData::Dumperだけディレクトリが1段深くなってい
るからです。だから-L../..ではlibperlexp.aが見つかりません。
ここだけ-L../../..にする必要があります。
ext/Data/Dumper/MakefileのLDDFLAGSの部分を書き換えてください。
予告:
あとはあれとあれの[TCD]を[TCDB]に書き換えれば終了。
--
わたなべひろふみ