哪个更好,手动创建通用 .so 的软链接或在 Linux 上安装 devel 包

哪个更好,手动创建通用 .so 的软链接或在 Linux 上安装 devel 包

我在 Centos linux 上安装了 libpng rpm 包,其中包括:

/usr/lib64/libpng.so.3.49.0
/usr/lib64/libpng.so.3 #softlink to libpng.so.3.49.0

我使用的软件具有以下功能:

/usr/lib64/libpng.so

安装libpng-开发创建/usr/lib64/libpng.so软链接,这样当 libpng 包更新时,这个软链接也会更新?(我实际上不需要编译任何东西,所以我只需要软链接。)

或者最好手动创建软链接,因为知道如果 libpng 包最终更新,软链接将不起作用并且可能需要重新创建?

或者除了前两种方法之外还有其他方法可以替代吗?

答案1

在这种情况下,我实际上会选择第三种方法:lib/在某处创建一个目录,将符号链接放在那里,然后导出LD_LIBRARY_PATH指向创建的目录(最好修改程序的启动脚本,如果不存在则创建一个)。这样,当程序启动时,它会首先在那里寻找共享库,并会找到 libpng.so。这是一个有点黑客式的解决方案,如果您使用的软件有专用目录,那么就没那么黑客式了,在这种情况下,您可以将符号链接放在它所属的位置。

Devel 包往往会安装很多混乱的东西,如果您实际上不想编译任何东西,则无需安装它们。

答案2

我建议安装 libpng-devel 包。

  1. 您还需要头文件!
  2. 如果您使用 rpm 安装库;那么为什么不使用 rpm 安装 .so;最好让两者保持最新状态。

相关内容