web-dev-qa-db-ja.com

Mac OS X10.6でのPerlインストールを台無しにした

Mac OS X10.6でのPerlのインストールを台無しにしました。方法を説明します:
Bundle :: DBD :: mysqlのcpanパッケージを追加したかったのですが、cpanは最初にBundle :: CPANを更新するように指示しました。私は許可のためにできませんでした。だから私はSudoed Perl -MCPAN -e Shellそしてcpanを更新した後、mysqlバンドルを入手しましたが、いくつかのテストに失敗し、インストールを強制しました(ところで動作します)。その後、何らかの理由でmysqlバンドルを再構築することにしました。これには長い時間がかかりました。最終的に、perldocのように多くが再構築されたことに気づきました。

これで、perldocを実行しようとすると、実行する権限がありませんが、Sudo perldocから、それが見つからないと言われました。

dlamblins-macbook:~ dlamblin$ perldoc
-bash: /usr/bin/perldoc: Permission denied
dlamblins-macbook:~ dlamblin$ Sudo perldoc
Password:
Sudo: perldoc: command not found
dlamblins-macbook:~ dlamblin$ Sudo /usr/bin/perldoc
Password:
Sudo: /usr/bin/perldoc: command not found

実際の方法でPerlを再インストールしたいApple Snow Leopardにアップデートしたときにインストールした(DBD :: mysqlを維持するのはいいのですが)、どこから始めればよいのかわかりません。いくつかのfinkパッケージやportsスタイルのシステムを使いたくありません。最新のPerl5.10を入手することはプラスです。

4
dlamblin

これは私が完全なMacNewbのように見えるかもしれませんが(LC以来Macを使用していますが)、10.6.2の複合アップデートをインストールしてもファイルが上書きされてもこの問題は修正されなかったため、遅ればせながら気づきました。ディスクユーティリティの「パーミッションの修復」ボタンで修正できます。そして、それはしました。

奇妙なことに、実際のバイナリ/usr/bin/perldocは触れられませんでした。おそらく、出力内のこれらのバンドルの1つと関係があります。

これが修正されたときに出力されるものです(最後の行は私にとっては?であることに注意してください)

Repairing permissions for “Macintosh HD”
Permissions differ on "private/etc/postfix/main.cf.default", should be -rw-r--r-- , they are -r--r--r-- .
Repaired "private/etc/postfix/main.cf.default".
Permissions differ on "usr/bin/c2ph", should be -rwxr-xr-x , they are -rw-rw-rw- .
Repaired "usr/bin/c2ph".
Permissions differ on "usr/bin/config_data", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/config_data".
Permissions differ on "usr/bin/cpan", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/cpan".
Permissions differ on "usr/bin/enc2xs", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/enc2xs".
Permissions differ on "usr/bin/instmodsh", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/instmodsh".
Permissions differ on "usr/bin/piconv", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/piconv".
Permissions differ on "usr/bin/prove", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/prove".
Permissions differ on "usr/bin/shasum", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/shasum".
Permissions differ on "usr/share/derby", should be drwxr-xr-x , they are lrwxr-xr-x .
Repaired "usr/share/derby".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/NetSNMP/default_store.pm", should be -rw-rw-r-- , they are -r--r--r-- .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/NetSNMP/default_store.pm".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/autosplit.ix", should be -rw-rw-r-- , they are -r--r--r-- .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/autosplit.ix".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/default_store.bundle", should be -rwxrwxr-x , they are -r-xr-xr-x .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/default_store.bundle".
Warning: SUID file "System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/MacOS/ARDAgent" has been modified and will not be repaired.

Permissions repair complete
3
dlamblin

Pacifist を使用して、10.6ディスクから適切なインストーラーパッケージを実行してみてください。どのパッケージが頭から離れているのかわかりませんが、Pacifistではディスク上のパッケージを参照および検索できます。新しいファイルが削除されるとは思いませんが、Perlのインストールがデフォルトで機能するように復元されます。ファイルやフォルダを選択的に抽出することもできます。

Using Pacifist to search for "Perl" on the Mac OS X 10.6 disc.

Sudo rm -fr /binが関係するかなり恥ずかしい事件の後、私は数年前にそれを使用してダメージコントロールを行いました(かなり成功しました、追加するかもしれません)。聞かないでください。

3

うん...ディスクユーティリティの「アクセス許可の修復」も私のために働いた。同じ問題... DBD :: mysqlモジュールをインストールし、アクセス許可を取得しました。

2
Kevin

最新のPerlはいつでも http://www.cpan.org/src/5.0/latest.tar.bz2 からダウンロードできます。

アーカイブを解除して、Configureを実行する必要があります。

基本的なOSにバージョンが含まれている場合でも、私は通常、Perlを自分でインストールすることを好みます。つまり、私のスクリプトは、メンテナではなく、スケジュールに従って新しいバージョンにアップグレードできます。

1
gorilla

http://support.Apple.com/kb/DL959 の下に最新のアップデートをインストールすると役立つかもしれません。 Time Machineでシステムを完全に復元した後、大きな問題が発生しました。これは多くのものを破壊しているようで、私は他のもの以外にquicklookをもう使うことができませんでした。このアップデートを再インストールした後、すべての機能は通常どおりに機能します。少し運が良ければ、Perlはこのアップデートに含まれています。

1
fin

Lionに新しいCPANをインストールしました。

ディスクユーティリティの「パーミッションの修復」の前:

$ perldoc
-bash: /usr/bin/perldoc: Permission denied

後に再び動作します:

$ perldoc
Usage: perldoc5.12 [-h] [-V] [-r] [-i] [-D] [-t] [-u] [-m] [-n nroffer_program] [-l] [-T] [-d output_filename] [-o output_format] [-M FormatterModuleNameToUse] [-w formatter_option:option_value] [-L translation_code] [-F] [-X] PageName|ModuleName|ProgramName
       perldoc5.12 -f PerlFunc
       perldoc5.12 -q FAQKeywords
       perldoc5.12 -v PerlVar

The -h option prints more help.  Also try "perldoc perldoc" to get
acquainted with the system.                        [Perldoc v3.15_02]
0
bbaassssiiee