
ソフトウェアのインストールに関してサポートが必要です。
一般的には、クラスター (CentOS) に PostGIS をインストールしようとしていますが、管理者権限がありません。sqlite3 インストール (エラーに関連) がありますが、これは破損しているようです。私のインストールは通常は機能し、(インストール プロセスによっても) 以前に使用されていました。
yum が使えません。
詳細に:
MakeFiles をビルドするために、必要になると思われるフラグを設定しました。
./configure --prefix="$HOME/.local" CFLAGS="-I$HOME/.local/include" LDFLAGS="-L$HOME/.local/lib" LT_SYS_LIBRARY_PATH="$HOME/.local/lib" LIBS="-L$HOME/.local/lib" SQLITE3_CFLAGS="-I$HOME/.local/include" SQLITE3_LIBS="-L$HOME/.local/lib"
しかし、make を実行すると次のエラーがスローされます。
/usr/bin/sed: can't read /usr/local/lib/libsqlite3.la: No such file or directory
libtool: error: '/usr/local/lib/libsqlite3.la' is not a valid libtool archive
直後(ただし、関連性はわかりません):
libtool: link: ranlib .libs/liblwgeom.a
もう一度 make を実行すると、そのディレクトリにジャンプします。しかし、同様のエラーでスタックします (もう一度 make を実行してもジャンプしません)。
/bin/sh ../../libtool --mode=link gcc -Wall -Wmissing-prototypes -std=gnu99 -I<exp. $HOME>/.local/include -fno-math-errno -fno-signed-zeros -fPIC -DPIC -I../rt_core -I../../liblwgeom -I<exp. $HOME>/.local/include -I/usr/include/gdal -I<exp. $HOME>/.local/include ../rt_core/librtcore.a raster2pgsql.o -L<exp. $HOME>/.local/lib -static ../../liblwgeom/liblwgeom.la -L/usr/lib64 -lgdal -L<exp. $HOME>/.local/lib -lgeos_c -lc -lm -o raster2pgsql
libtool: error: cannot find the library '/usr/local/lib/libsqlite3.la' or unhandled argument '/usr/local/lib/libsqlite3.la'
libtool が '/usr/local/lib/' を検索する理由がわかりません。libtool や MakeFiles にハードコードされているものは見つかりませんでした。私には何もわかりません。そして、これは私のスキルを超えています (どうやら)。
手伝ってもらえますか?
答え1
依存関係の 1 つ (proj) が、その .la ファイル内で悪意のある sqlite3 バージョンにリンクされています。この依存関係を再インストールすると、問題は解決しました。
同様のケースで役立つのは、依存関係内の「間違ったパス」を検索することです。
find <deps lib dir> -type f -exec grep -l "<wrong path>" {} +
称賛に値するhttps://stackoverflow.com/a/62500481/14339502「それを参照する他の .la ファイルがあるようです」という貴重なヒントを述べました。