我正在为GNU / Linux编写一个共享库,现在将使用“sudo make install”安装。我有CMake配方来创建文件并将它们安装在'/ usr / local / lib / app'中,并且库和链接都是正确创建的。
但是库路径没有更新,我必须手动运行“sudo ldconfig / usr / local / lib / app”才能使库可用。
我系统上的其他几个软件包将它们的库放在/ usr / local / lib下的特定文件夹中,所以我认为这是正确的。
如何让CMake更新系统的库路径以及创建文件并安装它们?这样做的正确方法是什么?
我也希望它能够完成,以便库路径更新能够在系统重启后继续存在。
谢谢, BCW
答案 0 :(得分:1)
我也希望它能够完成,以便库路径更新能够在系统重启后继续存在。
我不知道任何特定于CMake的设施。但是,您应该能够添加以下规则以使更改持久。
echo "/usr/local/bret/lib" > /etc/ld.so.conf.d/bret-i386.conf
echo "/usr/local/bret/lib64" > /etc/ld.so.conf.d/bret-x86_64.conf
/sbin/ldconfig
当您覆盖bret/lib{,64}
中的文件时,您仍需要重新运行ldconfig。