【问题标题】:How to include all .so libraries across subdirectories如何跨子目录包含所有 .so 库
【发布时间】:2021-01-04 12:06:10
【问题描述】:

我有一堆 .so 库,我想像 this question (Ubuntu 18.04) 一样包含它们。

我已按照 user1824407 中最受好评的回答中的步骤进行操作

我创建了.conf 文件

sudo gedit /etc/ld.so.conf.d/so_libraries.conf

然后我开始将 .so 库添加到文件中,如下所示:

/home/developer/.conan/.../lib

但它非常笨拙,在/.conan/目录中有很多带有.so库的子目录。有没有办法自动将所有 .sos 包含在 .conan 目录中?只写/home/developer/.conan 是行不通的。

非常感谢您的任何帮助。

【问题讨论】:

    标签: ubuntu conan .so


    【解决方案1】:

    使用查找:

     find /home/developer/.conan -name "*.so" -printf "%h\n" | sort | uniq > /etc/ld.so.conf.d/so_libraries.conf
    

    在目录/子目录中查找所有带有 .so 扩展名的文件,并且只打印前导目录 (%h) 而不是文件名。管道通过 sort 和 uniq 删除重复项并将结果输出到配置文件。

    【讨论】:

    • 谢谢,这似乎很有帮助,但是,不幸的是,它不起作用,因为(我想有必要将其写入 cmd)当我尝试传递命令时(同时使用和开头没有 sudo)bash: /etc/ld.so.conf.d/so_libraries.conf: Permission denied(即使我的 Ubuntu 确实有管理员权限)谢谢
    • 试试 sudo bash -c 'find /home/developer/.conan -name "*.so" -printf "%h\n" |排序 | uniq > /etc/ld.so.conf.d/so_libraries.conf'
    • 解决了问题,再次非常感谢
    猜你喜欢
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    • 2011-08-05
    • 2021-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多