新しく質問する

perlの1行目が#!/usr/bin/perlだと動かず#!/usr

役に立った:6件
  • 質問者:hurikake
  • 投稿日時:2010/08/08 05:38
  • 困り度:困ってます
  • 友達に紹介
  • ブログに書く
  • 教えて!gooお気に入り

perlの1行目が#!/usr/bin/perlだと動かず#!/usr/bin/perl5.8.9だと動くのですが、
#!/usr/bin/perlで動くようにするにはどうしたらいいのでしょうか?

インストールされているperlは
This is perl, v5.8.9 built for darwin-2level
です。

どこかでパスの設定をしてやればいいと思うのですが、
どこに何を書けばいいのかよくわかりません。

環境はMacOsX v10.6 SnowLeopardです。
どなたかよろしくお願いいたします。

この質問への回答は締め切られました。
このQ&Aは役に立ちましたか?(役に立った:6件)
  • 参考になった:0件

No.2ベストアンサー20pt

  • 回答者:ryoyama
  • 回答日時:2010/08/08 09:16

MacOSのことはよくわかりませんが、一般的なUNIX系OSで考えると、、

シンボリックリンク/usr/bin/perlを作り、/usr/bin/perl5.8.9にリンクすればいいでしょう。
ln -s /usr/bin/perl5.8.9 /usr/bin/perl

そうすればPerlスクリプトは「#!/usr/bin/perl」のままでOKです。

通報する

この回答へのお礼

ありがとうございます。

上記のコマンドを実行して無事リンクの設定が出来ました。

  • 参考になった:0件
  • 回答者:kmee
  • 回答日時:2010/08/08 06:53

「動かない」の内容をもう少し詳しく書いてください。

1)ターミナルで
ls -l /usr/bin/perl
と入力したら、ちゃんとperlが表示されますか?それとも「No such file or directory」とエラーになりますか?
実行権はちゃんと付いてますか?


2)同じく
/usr/bin/perl --version
としたらどんな表示になりますか?

3)スクリプトを実行すると、どんなエラーメッセージがでるのですか?


#!を実行に使うコマンドを指定するものなので、 #!/usr/bin/perl で実行させたいなら、まずは、 /usr/bin/perl が正常に動作するかを確認しましょう。

1)で表示されないなら、なんかの操作ミス等でファイルを消してしまったのでしょう。
2)の表示は、私の10.6.4では
This is perl, v5.10.0 built for darwin-thread-multi-2level
となります。

1),2)が問題無しで、2でのversionが5.10.0だとすると、そのバージョンの違いによるものかもしれません。
・5.8.9で追加したモジュールを使用している
・5.8.9でしか使用できないスクリプトになっている
など が考えられます。(あんまり考えられないことだけど)
そのためには、3)のエラーメッセージが必要です、

通報する

  
このQ&Aは役に立ちましたか?(役に立った:6件)

このページのトップへ

Facebook公式ページ

公式Twitter