GNU/Linux >> Linux の 問題 >  >> Linux

エラー外部Perlモジュールの構築中にモジュールを構築できません

モジュールをビルドできません」というエラーが表示されますか 」OpenCAベース1.5.1のコンパイル中に?はいの場合、このチュートリアルでは同じ問題を修正する方法を説明します。

これが完全なエラーメッセージです。

Build::External PERL modules

Building (openca::ac) ... ERROR::Cannot build module
make[6]: *** [openca-ac] Error 1

Build::External PERL modules

Building (Authen::SASL::215) ... ERROR::Cannot build module

修正方法モジュールをビルドできないエラー

パッケージAuthen::SASLで「モジュールをビルドできません」というエラーが発生しました 。ただし、このエラーはどのPerlモジュールでも発生する可能性があります。

最初は、パッケージのAuthen::SASLのように見えました。 システムにインストールされていません。そこで、以下のコマンドを使用してインストールしました:

# perl -MCPAN -e 'install Authen::SASL'

CentOS 6のデフォルトでは、上記のコマンドはAuthen::SASLをインストールしました バージョン2.16。ただし、エラーは解決しませんでした。後で、OpenCABaseのインストールに必要なすべての外部モジュールがsrc/ext-modulesの下にあることに気付きました。 フォルダ。問題をデバッグするには、ディレクトリをそれぞれのモジュールフォルダに変更し、そのログファイルを確認する必要がありました。たとえば、このエラーの原因となっている外部PerlモジュールはAuthen-SASL-2.15です。したがって、ディレクトリをsrc/ext-modulesの下のAuthen-SASL-2.15に変更します。 。

$ cd src/ext-modules/Authen-SASL-2.15

ログファイルで次のエラーが見つかりました:

$ vi log.err

Only one of PREFIX or INSTALL_BASE can be given. Not both.

そのエラーはどういう意味ですか? perl Makefile.PL.を実行しました

[src/ext-modules/Authen-SASL-2.15]$ perl Makefile.PL

驚いたことに、上記のコマンドはエラーをスローしませんでした。今、私はmakeを試しました openca-base-1.5.1で ディレクトリを確認し、その特定のPerlモジュールを通過し、次のモジュールのコンパイル中に失敗しました– Convert::ASN1

Build::External PERL modules

Building (Authen::SASL::215) ... Ok
Building (Convert::ASN1::022) ... ERROR::Can not build module

同じように、Convert::ASN1に切り替えることができます。 src/ext-modulesの下のフォルダ perl Makefile.PLを試してください OpenCAベースディレクトリに戻り、makeを実行します エラーを修正します。しかし、次にコンパイルする必要がある40個の外部モジュールすべてに対してそれを行うことはできますか?ああ!これは、この問題を解決するための正しい方法ではありません。

エラーを詳しく調べたところ、環境変数PREFIXまたはINSTALL_BASEのいずれかを設定する必要があり、両方を設定する必要はないことがわかりました。そのヒントは、エラーを解決するのに役立ちました。

PerlおよびgrepPERL_MB_OPTに設定されているすべての環境変数を一覧表示するだけです。 。

# perl -V | grep PERL_MB_OPT

PERL_MB_OPT="--install_base /root/perl5"

install_baseが表示されます PERL_MB_OPTに設定されています 。変数の設定を解除すると、OpenCABaseをコンパイルできます。

#unset PERL_MB_OPT

これで、この問題はsrc/ext-modules内のすべての外部モジュールでグローバルに修正されました。 。


Linux
  1. CentOSへのLiMEのインストール中にエラーが発生する– lib / modules / kernel_version / build:そのようなファイルまたはディレクトリはありません[解決済み]

  2. -lmが見つかりませんか?

  3. 共有ライブラリの読み込み中の Linux エラー:共有オブジェクト ファイルを開けません:そのようなファイルまたはディレクトリはありません

  1. エラー:ld.so:オブジェクト LD_PRELOAD をプリロードできません:無視されました

  2. pkg-config エラーが見つかりません

  3. cmake を使用したビルド エラー:-lpthreads が見つかりません

  1. LinuxにPerlモジュールをインストールする方法

  2. Perlエラー:PERLXML-パーサーモジュールにはexpat-develが必要です

  3. 新しいバージョンの glibc を使用中にエラーが発生しました