設定を管理する pit の Perl もづーる Config::Pit - 冬通りに消え行く制服ガールは✖夢物語にリアルを求めない。 - subtech
Config::Pit というモジュールが便利だそうだ、という噂を聞いたのでインストールしようとしたら、つまづいた。
CPANコマンドで
> install Config::Pit
ってやればいいだけかと思ってたら、何故か失敗する。
よくよくエラーメッセージを読んでみると、途中でFile::HomeDirをインストールしようとして失敗している模様。
じゃあFile::HomeDirが何故失敗するのかとエラーメッセージを読んでみると、途中でMac::Carbonをインストールしようとして失敗している。
In file included from AppleEvents.xs:63: ../Carbon.h: In function ‘ReadHex’: ../Carbon.h:116: warning: ISO C90 forbids mixed declarations and code ../Carbon.h: In function ‘SecondsMac2Unix’: ../Carbon.h:167: warning: ‘ConvertLocalTimeToUTC’ is deprecated (declared at /System/Library/Framewo rks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/UTCUtils.h:86) ../Carbon.h: In function ‘SecondsUnix2Mac’: ../Carbon.h:179: warning: ‘ConvertUTCToLocalTime’ is deprecated (declared at /System/Library/Framewo rks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/UTCUtils.h:110) ../Carbon.h: In function ‘GUSIFSpUp’: ../Carbon.h:207: warning: ‘FSMakeFSSpec’ is deprecated (declared at /System/Library/Frameworks/CoreS ervices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:10072) ../Carbon.h: In function ‘GUSIFSpDown’: ../Carbon.h:229: warning: ‘PBGetCatInfoSync’ is deprecated (declared at /System/Library/Frameworks/C oreServices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:8697) ../Carbon.h:232: warning: pointer targets in passing argument 1 of ‘MacPerl_CopyC2P’ differ in signe dness ../Carbon.h:233: warning: ‘FSMakeFSSpec’ is deprecated (declared at /System/Library/Frameworks/CoreS ervices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:10072) ../Carbon.h: In function ‘GUSIFSp2FullPath’: ../Carbon.h:265: warning: ‘FSpMakeFSRef’ is deprecated (declared at /System/Library/Frameworks/CoreS ervices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:7477) ../Carbon.h:278: warning: ‘FSpMakeFSRef’ is deprecated (declared at /System/Library/Frameworks/CoreS ervices.framework/Frameworks/CarbonCore.framework/Headers/Files.h:7477) ../Carbon.h:283: warning: pointer targets in passing argument 2 of ‘strncpy’ differ in signedness ../Carbon.h:290: warning: pointer targets in assignment differ in signedness ../Carbon.h:292: warning: pointer targets in passing argument 1 of ‘sprintf’ differ in signedness ../Carbon.h: In function ‘GUSIPath2FSp’: ...
なんじゃこりゃー。さっぱり分からん。
とりあえずCPANコマンドではMac::Carbonをインストールできないが、ソースを持ってきて
$ perl Makefile.PL $ sudo make $ sudo make install
とやると、同じようなエラーメッセージはずらずらと吐き出されるもののインストールはできてしまう。
あとはConfig::PitのインストールもCPANコマンドでやり直したらできてしまった。。。
なんだか気持ち悪いけどとりあえず使えるようになったからいいか…