【问题标题】:Linking to libraries in gcc链接到 gcc 中的库
【发布时间】:2010-02-12 16:43:40
【问题描述】:

我有一个动态库集合,我想在 /usr/local/lib 中链接到这些动态库,如何在不设置 LD_LIBRARY_PATH 的情况下使用 gcc 执行此操作(我听说这样做很糟糕,原因有很多) . 我花了一个小时在互联网上查看这个,并摆弄命令行参数,我让它工作的唯一方法是使用 -static -I/usr/local/lib/ 标志,但这会将动态库转换为静态库库,编译器会抛出一些警告。

感谢您的帮助

【问题讨论】:

    标签: c linux unix gcc


    【解决方案1】:

    /usr/local/lib 添加到/etc/ld.so.conf 中的加载器配置并运行ldconfig

    【讨论】:

      【解决方案2】:

      您可以在/etc/ld.so.conf 中为ldd(动态链接器)设置系统范围的搜索目录。在许多发行版(好吧,我的)中有一个/etc/ld.so.conf.d/ 目录,其中/etc/ld.so.conf 包含所有*.conf 文件。可以直接在ld.so.conf中添加目录,也可以在目录中添加.conf文件。

      当然,您需要 root 访问权限才能执行此操作。

      哦,是的:正如 Ignacio 所说,更改这些配置文件后运行 ldconfig

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-09
        • 2011-08-06
        • 2023-03-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多