我正在为gnu/linux编写一个共享库,现在将使用“sudo make install”安装它。我有cmake recipes来创建这些文件并将它们安装在'/usr/local/lib/app'中,并且库和链接是正确创建的。
但是库路径没有更新,我必须手动运行“sudo ldconfig/usr/local/lib/app”以使库可用。
我系统中的其他几个包将它们的库放在/usr/local/lib下的一个特定文件夹中,所以我认为这是正确的。
然后如何让cmake更新系统的库路径,以及创建文件并安装它们?正确的方法是什么?
我还希望它能够完成,以便库路径更新能够在系统重新启动后存活下来。
谢谢,
BCW公司
最佳答案
我还希望它能够完成,以便库路径更新能够在系统重新启动后存活下来。
我不知道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。关于linux - 如何使用CMake更新库路径?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5455027/