権限のないユーザーとしてPL / Rをビルドしてインストールする方法は?

権限のないユーザーとしてPL / Rをビルドしてインストールする方法は?

Postgresインスタンスがあり、自分で構築する能力があります。

使用このガイドライン私は走る:

USE_PGXS=1 make

これはうまくいきますが

USE_PGXS=1 make install

いいえ、次のエラーが発生します。

/bin/sh /usr/lib64/pgsql/pgxs/src/makefiles/../../config/mkinstalldirs '/usr/lib64/pgsql'
mkdir -p - /usr/share/pgsql/contrib
mkdir: 不可能`/usr/share/pgsql/contrib'ディレクトリの作成中:権限が拒否されました
*[インストールディレクトリ]エラー1

理想的にはローカルにインストールしたいのですが、可能かどうかわかりません。

私はRed Hat 5を使用しています。

答え1

pl/Rリストは、問題があるかどうかを尋ねるためのより良い場所かもしれません。 Joe Conwayも質問に答えるために出席しました。 pl / R Debianパッケージのクイックコンパイルを見ると、makeにDESTDIRパラメータを渡したいようです。それはまるで

make DESTDIR=/home/...

これは Debian パッケージの make ラインです。

USE_PGXS=1 PG_CONFIG=/usr/lib/postgresql/8.4/bin/pg_config /usr/bin/make  -C . \   
CFLAGS="-g -Wall -O2" CXXFLAGS="-g -Wall -O2" CPPFLAGS="" LDFLAGS="" \
-I/usr/share/R/include PG_CPPFLAGS=-I/usr/share/R/include

これはmake installラインです

USE_PGXS=1 PG_CONFIG=/usr/lib/postgresql/8.4/bin/pg_config /usr/bin/make  -C . \
CFLAGS="-g -Wall -O2" CXXFLAGS="-g -Wall -O2" CPPFLAGS="" LDFLAGS=""  USE_PGXS=1 \   
R_HOME=/usr/lib/R install DESTDIR=debian/tmp/

ご覧のとおり、設定する必要がある他のパラメータがたくさんあります。個人的には、システム管理者にバイナリをインストールするよう説得しようとしています。

答え2

ソフトウェアがインストールされている場所(おそらくホームフォルダのどこか)を指定するには、いくつかの追加オプションを使用してmakeを実行する必要があると思います。また、システムの起動時にデーモンが実行されるようにマークするなどのタスクを実行するインストール部分を除外する必要があるかもしれません。ユーザーはこれを行うことができないためです。

make prefix=/home/username/my_postgres install

より作成のための文書より一般的な値の一部を設定できます。

答え3

configure解凍したディレクトリにコマンドがありますか?

一部のソフトウェアでは実行できます ./configure --prefix=/home/yourname/some_directory

makeとが続きます make install

その場合はmake、実行可能ファイルが/home/username/bin完了したら、ディレクトリまたはパスの任意の場所に手動でコピーできます。ライブラリファイルは、/home/username/libホームディレクトリまたは所有権を持つディレクトリにコピーできます。何でも可能です。正しい位置に置くだけです。

関連情報