我需要安装软件方面的帮助。
一般来说:我尝试在集群(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 文件”。