非標準環境でコンパイルされたバイナリをインストールする

非標準環境でコンパイルされたバイナリをインストールする

ホスティング アカウントに GraphicsMagick をインストールしようとしています...

ほとんどの場合、これを機能させるためにこの情報を使用しました:

バイナリにライブラリの場所を指定するにはどうすればいいですか? (Linux)

ただし、次のエラーに示されているように、delegates.mgk (./lib/GraphicsMagick-1.3.14/delegates.mgk にあります) はまだ見つかりません。

gm-bin convert: Unable to access configuration file (delegates.mgk) [No such file or directory].

a) バイナリがこのファイルをどこに置くべきかをどのように判断するか、または b) ラッパー スクリプトを拡張してそれを支援するにはどうすればよいですか?

答え1

/PATH/のバイナリを調べて判明しました

バイナリには次の追加のパス変数が必要です。

$MAGICK_CONFIG_PATH
$MAGICK_CODER_MODULE_PATH
$MAGICK_FILTER_MODULE_PATH

...これが私のセットアップから得られたスクリプトの変更結果です:

#!/bin/sh
if [ -n "$LD_LIBRARY_PATH" ]; then
  LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/USER/lib
else
  LD_LIBRARY_PATH=/home/USER/lib
fi
[ -z "${MAGICK_CONFIGURE_PATH}" ] && export MAGICK_CONFIGURE_PATH=/home/USER/lib/GraphicsMagick-1.3.14/config
[ -z "${MAGICK_CODER_MODULE_PATH}" ] && export MAGICK_CODER_MODULE_PATH=/home/USER/lib/GraphicsMagick-1.3.14/modules-Q8/coders
[ -z "${MAGICK_FILTER_MODULE_PATH}" ] && export MAGICK_FILTER_MODULE_PATH=/home/USER/lib/GraphicsMagick-1.3.14/modules-Q8/filters
export LD_LIBRARY_PATH
exec /home/USER/bin/gm-bin "$@"

関連情報