从 github 安装库时出现问题

从 github 安装库时出现问题

通常,在安装 lapack、blas 等库时,我只需运行 makefile,它们就会自动安装。要将它们与我的 gfortran 编译器链接,gfortran -llapack 或 gfortran -lblas 标志就足以链接它们。但是当我使用 make 安装此 slatec 库时,通过给出标志 gfortran -lslatec,什么也没发生,并且出现无法找到 slatec 的错误。如何正确安装它?

https://github.com/Rufflewind/slatec

这就是图书馆。

答案1

命令

make FC=gfortran all

当地的 lib/目录:

$ ls lib/
libslatec.a  libslatec-dbvp.a  libslatec-sbvp.a  libslatec.so  libslatec.so.4  libslatec.so.4.1.1

如果要在构建自己的程序时链接库,则需要通过提供额外的库搜索路径来告诉编译器在哪里找到它

gfortran . . . -L path/to/slatec/lib/ -lslatec

或者将库复制到默认库搜索路径的某个位置,例如/usr/local/lib- slatec Makefile 提供了一个install目标来执行此操作,您可以通过运行make -n install

$ make -n install
install -d /usr/local/lib
install -m644 -t /usr/local/lib \
    lib/libslatec.a lib/libslatec-dbvp.a lib/libslatec-sbvp.a
install -m755 -t /usr/local/lib lib/libslatec.so.4.1.1
cp -P lib/libslatec.so lib/libslatec.so.4 \
    /usr/local/lib

所以你会这样做

sudo make install

要运行链接到新共享库,你可能还需要运行

sudo ldconfig

为了更新动态链接器缓存。

相关内容