OSXとPerl=多くのモジュールが必要な場合は少し苦痛です。
問題:
macports-デフォルト5.12オプション5.14。残念ながら、多くのmacportsには間違った依存関係があり、正確に5.12を要求し、5.14で問題が発生した場合、デフォルトのperlは5.14になり、一部のパッケージは5.12をインストールして使用します:(。
perlbrew-とても良くて簡単ですが、ここに欠点があります。macportsを使用していくつかのパッケージをインストールしたい場合、およびmacportのperlに依存するものは、インストールされます。したがって、1つのmacportのperl(インストールされたパッケージとperlbrew perlで機能するもの)を取得します。さらに悪いことに、たとえば5.14 perlbrewはmacports(デフォルトは5.12)では正しく再生されません。例:p5-GD、ImageMagick、その他多数。
自作-IMO、恐ろしい。rm -rf / usr / localを推奨するセクションに到達したときに、ドキュメントの読み取りを停止しました。(もちろん、mysqlなどのすべてのデータを使用します)。多分今それはより良いです。
- fink、macportsと同じ問題。
私の解決策:
実際の開発にはmacportsバージョンを使用し、テストにはperlbrewを使用するだけです(ただし、GDなどの依存バイナリでは使用できません)。「perlbrew」がそのshell-start-filesを調達したい場合、そうでない場合は、macportsを使用します。
もう1つの問題の原因は、(一貫性と依存関係のために)最初にperlモジュールのmacportsバージョンをインストールしようとし、macportsバージョンが存在しない場合、または最新のcpanバージョンが必要な場合にのみ-でインストールすることcpanm
です。CPANバージョンExtutils::Makemakerはmacportsバージョンが好きではありません-そして、モジュールをインストールするときに常にそれを再コンパイルしますcpanm
。
本当の痛み。Macportsには新しいperlがひどく必要です-maintenaierは、間違った依存関係をクリーンアップし、cpanm
cpanバージョンのモジュールをmacportパッケージとして正しくインストールするもののmacportsバージョンを作成します。FreeBSDには何年も前のことがあります-cpanモジュールは、pkg_*コマンドで管理できるBSDPANバンドルに含まれています。
したがって、結果:私は現在OSXperlの簡単な使用法を知りません。perlに依存するソフトウェアを使用したい場合は、すぐにそれらをコンパイルする必要があります(また、コンパイルされない場合もあります。したがって、OSXのパッチが適用されたバージョンが必要なので、macportsまたはhomebrewを使用して開始します。
Sinanがすでに言ったように、これらのインストールはどれもシステムperlに干渉しませんが、おそらく最初にsystem perlでcpanを使い始め、いくつかのモジュールを/Libraryにインストールしました。
IMO、あなたはそれと一緒に暮らすことができます。macportsをインストールして使い始めるだけです。ただし、perl-repair-installationが必要な場合は、https ://apple.stackexchange.com/に問い合わせる方がよいでしょう。