問題タブ [perlbrew]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
141 参照

perl - perlbrew で perl バイナリをインストールできますか?

私は raspi で perlbrew を使用していますが、遅いプロセッサで新しい perl をコンパイルしたくありません。自作を使用する場合のように、それ (または他の同様のツール) でバイナリをインストールできますか?

0 投票する
1 に答える
1343 参照

perl - PERLBREW_ROOT を別のディレクトリに移動するにはどうすればよいですか?

perlbrewPerl 環境の管理に使用します。perlbrewドキュメントに従って初めてインストールしたとき、すべてが にインストールされましたが~/perl5/perlbrew、今では望ましくないと思います。

ドキュメントには次のように記載されています。

ディレクトリ ~/perl5/perlbrew には、すべてのインストール perl 実行可能ファイル、ライブラリ、ドキュメント、lib、site_libs が含まれます。ドキュメントでは、そのディレクトリは「perlbrew root」と呼ばれています。HOME のクォータが制限されているなどの理由で別の場所に設定する必要がある場合は、インストーラーを実行する前に PERLBREW_ROOT 環境変数を設定することでそれを行うことができます。

質問:PERLBREW_ROOTディレクトリを/opt/perl5/perlbrewではなくに移動するにはどうすればよい~/perl5/perlbrewですか?

0 投票する
1 に答える
533 参照

perl - Perl - Local::lib が一貫して @INC のローカル パスを見つけられない - perlbrew と競合しますか?

システムへのルート アクセス権がないため、ブートストラップ方法を使用してインストールした local::lib を使用して perl モジュールをインストールしています。

次に、cpanm を正常にインストールし、cpanm を使用してモジュール FAST をインストールしました。ただし、fasgrep 関数を使用しようとすると、次のエラーが発生します。

FAST.pm がローカル ライブラリで利用できることを確認しましたが、システムはそこを探していないようです。

パス変数によると、適切な場所で検索する必要があります。

export PER5LIB=$HOME/perl5/lib/perl5 を .bash_profile に追加しましたが、まだ機能しません。

私はperlの使用に非常に慣れていません。問題は、perlbrew もインストールされていることでしょうか? もしそうなら、どうすればprelbrewの「クリーン」アンインストールを行うことができますか?

0 投票する
0 に答える
94 参照

perl - 「sudo perl」と「perl」が異なる perl バージョンを実行するのはなぜですか?

Ubuntu 14 には が付属していましたが、インストールされてperl v5.18.2いるプログラムをテストしてから、必要なバージョンを使用したいと考えています。perl v5.22.0perlbrewperlbrew switch perl-5.22.0

に切り替えた後perl v5.22.0、プログラムを でテストしようとしましsudoたが、デフォルトで実行されるのはなぜperl v5.18.2ですか?

perl -v: 結果 ここに画像の説明を入力

sudo perl -v: 結果 ここに画像の説明を入力

0 投票する
1 に答える
296 参照

perl - curl: perlbrew をインストールしようとすると転送が閉じます

Mac OSX に perlbrew をインストールしようとしていますが、このエラーが端末に表示され続けます。これが何を意味するのかよくわかりません

最新の perlbrew をダウンロード

curl: (18) 読み取りが残っている ###### バイトで転送が閉じられました

このエラーが貧弱なネットワーク サービスに関連していることを漠然と理解していますが、正しいですか?

perlbrewをオフラインでインストールする方法と、perlbrewが完了した後にモジュールをインストールする方法を誰か助けてくれませんか!

あなたの助けに感謝します

0 投票する
1 に答える
231 参照

perl - perlbrew と cpan のインストール場所の同期

perlbrew を使用してホーム ディレクトリでローカルの perl を実行し、cpan を使用して新しいモジュールをインストールしています。ただし、設定が間違っているようです。cpan を使用すると、ライブラリは常に ~/perl ディレクトリにインストールされますが、私の perlbrew は ~/perl5 ディレクトリにあります。これにより、適切な PERL5LIB ディレクトリを作成する際に問題が発生します。むしろ、perl または perl5 ライブラリをどのような順序で含める必要がありますか。最初にインクルードすると間違ったモジュールがロードされるか、間違ったバージョンが使用されているという苦情が発生するという、ニワトリと卵の問題に遭遇し続けているようです。具体的には、5.8.8 perl バージョン (最初にインストールしたのは、少し古いバージョンにアップグレードすることを決定する前であり、まだ /bin/perl のバージョンです) が、使用している 10.1 ライブラリと競合していると不平を言っています。

これは、構成ファイルを更新することでおそらく修正できると思いますが、何を変更すればよいかわかりません。cpan config.pm を確認しましたが、インストール方向を定義するものは何も表示されません。実際、グローバル cpan ディレクトリにインストールしようとするのではなく、ローカルにインストールすることを cpan がどのように認識しているかわかりません。

2 つの個別のライブラリを取得するのではなく、cpan で perlbrew ライブラリを更新するために変更する必要がある適切な構成値を教えてもらえますか?

編集

さて、私は非常に盲目です。答えは ~/.cpan/CPAN/MyConfig.pm の構成ファイルにありました。~/perl ディレクトリを指している可能性のある行を見つけるために perl という単語を検索しても、ファイルを数回確認したことを誓いますが、探していた非常に明白な構成オプションをどういうわけか見逃していました...方法がわからない。

とにかく、それを見たら、指している場所を変更する必要がありました。これには、少し試行錯誤が必要でした. この行を変更しました:

もちろん、これは私が perlbrew に使用している perl バージョンの場所です。これで問題は解決したようです。盲目でなければ簡単だったはずです。

この行と PERL5LIB 変数の両方が ~/.bashrc に設定されており、perl-5.10.1 バージョンの perllib を指すように効果的にハードコードされています。つまり、別の perl バージョンに切り替えることにした場合、両方の参照を更新するか、再び問題が発生する必要があります。cpan や私の PERL5Lib に、perls ディレクトリからどのバージョンの perl を使用すべきかを推測させる方法がわかりません。それは私にとってそれほど大きな問題ではありません.5.10.1以降にアップグレードすることは許可されないと思います(私はしたいのですが). それ以外の場合は、現在正常に動作します。

0 投票する
1 に答える
328 参照

apache - apache+suexec で perlbrew スクリプトを実行中にエラーが発生しました

Centos 5.11、Apache 2.2、およびデフォルトの perl を実行するサーバーがあります。suexec を介してスクリプトを実行すると「問題なく」動作しますが、perlbrew をインストールして、干渉することなく追加のモジュールをインストールできるようにしました。

テスト用の簡単な perl スクリプトを作成しました。

apache+suexec を実行すると、期待どおりに出力されます。

しかし、シバン行を次のように変更すると:

同じ方法で実行すると、内部サーバー エラーが発生し、Apache エラー ログに次のように表示されます。

ただし、コマンド ラインでの実行は問題ありません。

私はあらゆる種類のことを試しました。「PATH」の問題なのかと思ったのですが、Apacheのドキュメントには「2.2では、Setenvを使用してPATH環境変数を設定できません」と書かれています。

通常、suexec エラーは dos/unix エンコーディングが原因のようですが、ここでは問題ではありません。

perlbrew のインストール方法に問題があるのでしょうか? 別のユーザーとして(apacheとして)する必要がありますか?別の場所 (/var/www の下)?

その他の提案は大歓迎です!

0 投票する
1 に答える
2908 参照

perl - 「…/auto/List/Util/Util.so: undefined symbol: PL_stack_sp at …/XSLoader.pm」は、Travis CI で CGI::Test _and_ を使用してテスト スイートを実行している場合のみ

CGI::Github::Webhookと呼ばれる Perl モジュールがあり、そのテスト スイートは今のところブランチ master の Travis CI で正常に動作します。しかし、これは CGI スクリプトを作成するためのモジュールであるため、CGI::Testでテストしたいと考えていました。

しかし、ブランチで実行されたすべての Travis CI はcgi-testこれまでのところ失敗しています。Perl 5.24 以降での実行を除いて、失敗したすべての実行には次の行が含まれていましたが、パス内の Perl バージョン番号が異なっていました。

Perl 5.22 での現在の最新の実行からの例。Perl 5.24 の症状は多かれ少なかれ同じですが、最初のエラー メッセージの表現が異なっているようです。

ここで何がうまくいかないのか誰にもわかりませんか?これを修正する機会さえありますか?私にはバグのように見えます。しかし、どのモジュールで?CGI-TestScalar-List-Utils、またはXSLoaderに対する一致するバグ レポートは見つかりませんでしたが、新しい問題ではないように思われるため、そのような問題は既に報告されていると予想していました。(最初に気づいたのは数ヶ月前)

ただし、Debian Unstable (現在の Perl バージョン 5.22) でシステム提供の Perl および Perl モジュールを使用してそのテスト スイートを実行しても失敗しないため、ローカルで問題を実際に再現することはできません。