
소프트웨어 설치에 도움이 필요합니다.
일반적으로 클러스터(CentOS)에 PostGIS를 설치하려고 하는데 관리자 권한이 없습니다. sqlite3 설치(오류와 연결됨)가 있지만 손상된 것 같습니다. 내 자신의 것은 일반적으로 작동하며 이전에 (설치 프로세스에서도) 사용되었습니다.
냠을 사용할 수 없습니다.
상세히:
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
.la 파일에 악성 sqlite3 버전에 연결된 종속성(proj) 중 하나입니다. 이 종속성을 다시 설치하면 문제가 해결되었습니다.
비슷한 경우에 도움이 되는 것은 종속성에서 '잘못된 경로'를 검색하는 것입니다.
find <deps lib dir> -type f -exec grep -l "<wrong path>" {} +
감사합니다.https://stackoverflow.com/a/62500481/14339502그는 "그것을 참조하는 다른 .la 파일이 있는 것 같습니다"라는 귀중한 힌트를 언급했습니다.