web-dev-qa-db-ja.com

Linux:DBD :: Pgモジュールをインストールするにはどうすればいいですか?

PostgresDBはすでにインストールされています。システムPerlを使用していません。「/ srv/data203806/Migration/CPAN/localperl/bin」に別のPerlをインストールしました。インストールしようとすると、pg_configへのパスを要求されます。

[root1@frmrszvwb023 bin]# ./cpan install DBD::Pg
Reading '/root/.cpan/Metadata'
  Database was generated on Fri, 07 Mar 2014 03:53:02 GMT
Running install for module 'DBD::Pg'
Running make for T/TU/TURNSTEP/DBD-Pg-3.0.0.tar.gz
Checksum for /root/.cpan/sources/authors/id/T/TU/TURNSTEP/DBD-Pg-3.0.0.tar.gz ok

  CPAN.pm: Building T/TU/TURNSTEP/DBD-Pg-3.0.0.tar.gz

    Configuring DBD::Pg 3.0.0
    Path to pg_config?
    No POSTGRES_HOME defined, cannot find automatically
    Warning: No success on command[/srv/data203806/MUXmh-Migration/CPAN/localperl/bin/Perl Makefile.PL]
    'YAML' not installed, will not store persistent state
      TURNSTEP/DBD-Pg-3.0.0.tar.gz
      /srv/data203806/MUXmh-Migration/CPAN/localperl/bin/Perl Makefile.PL -- NOT OK
    Running make test
      Make had some problems, won't test
    Running make install
      Make had some problems, won't install
    Could not read metadata file. Falling back to other methods to determine prerequisites

DBD :: Pgのインストールを手伝ってください? pg_configへのパスを取得する方法は?

10
Naghaveer Gowda

libpq-devをインストールする必要があります。例: Ubuntuの場合:

Sudo apt-get install libpq-dev
17
Uooo

この問題が発生したばかりです。Ubuntu16.04Xenialでは、探しているパッケージは次のとおりです。

apt-get install libdbd-pg-Perl
19
Fernando Nunes

CentOS/RHでは、yumを使用してPerl-DBD-Pgパッケージをインストールすることで修正できます。

Sudo yum install Perl-DBD-Pg
9
user2086514

[〜#〜] readme [〜#〜] から:

インストール:

インストールする前に、「cpansign -v」プログラムを使用して、DBD :: Pgのコピーが完全で有効であることを暗号で確認してください。プログラム「cpansign」はModule :: Signatureの一部であり、CPANから入手できます。

デフォルトでは、Makefile.PLはApp :: Infoを使用してPostgreSQLライブラリの場所を検索し、ディレクトリを含めます。ただし、自分で制御する場合は、環境変数POSTGRES_INCLUDEとPOSTGRES_LIBを定義するか、POSTGRES_HOMEのみを定義します。 SSLをサポートするPostgreSQLをコンパイルした場合は、POSTGRES_LIB環境変数を定義し、次のように「-lssl」と「-lcrypto」を追加する必要があることに注意してください。

エクスポートPOSTGRES_LIB = "/ usr/local/pgsql/lib -lssl -lcrypto"

DBD :: Pgをインストールする通常の手順:

  1. Perl Makefile.PL
  2. make
  3. テストを行う
  4. インストールする

Rootとしてではなく、通常のユーザーとして手順1から2を実行してください。

スクリプトがpg_config情報自体を見つけられない場合は、スクリプトへのパスを尋ねられます。ここに、ファイル自体の名前を含む、pg_configファイルへの完全なパスを入力します。

モジュールを使用する場合は、ドキュメントをお読みください。

4
Dr.Avalanche

Perlモジュールをインストールする前に、PostgresDBにアクセスするためのクライアントをインストールする必要があります。サーバーとヘッダーファイルをインストールするだけです。

Sudo apt-get install postgresql
Sudo apt-get install libpq-dev
3
Eugen Konkov

ArchLinux(またはPacmanを使用するディストリビューション)の場合:

pacman -S Perl-dbd-pg
2
Surrogard

Fedora 29、plenv、Perl v5.18.0

Plenvが機能するようになると、次のコマンドを使用してcpanmでDBD :: Pgをインストールできるようになりました。

Sudo dnf install postgresql postgresql-devel
cpanm --quiet --notest DBD::Pg
1
RobotNerd

あなたが試すことができます:

locate pg_config

これは次のように表示されます。

/usr/pgsql-10/bin/pg_config
/usr/pgsql-10/include/ecpg_config.h
/usr/pgsql-10/include/ecpg_config_x86_64.h

次に、以下を実行します。

POSTGRES_HOME=/usr/pgsql-10 ./cpan install DBD::Pg
0
Eugen Konkov