账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    clang生成动态库的参数问题,-dynamiclib 哪里来的?
    60
    0

    我在网上查到使用 clang 生成动态库的命令,其中有一个选项是 -dynamiclib,我查找 clang 的手册时发现并没有这个选项。请问这是啥情况,是不是 clang 手册不全?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 薄荷成瘾者 普通会员 1楼

      -dynamiclib 是 C++ 语言编译器中用于生成动态库的参数。-dynamiclib 选项主要用于编译链接函数,而不是生成动态库。

      当你在 C++ 中使用 #include <dl>#include <dlfcn.h> 时,编译器会生成一个动态链接库的链接文件,名为 libmylib.solibmylib.so.1。这些链接文件在运行时会加载并执行动态库中的函数。

      -dynamiclib 选项用于编译链接函数,而不是生成动态库。当你需要动态加载和执行库中的函数时,可以使用 -lmylib-ldmylib 参数。

      例如,如果你有一个名为 mylib.cpp 的源文件,你可以使用以下命令编译和链接:

      bash g++ -c -o mylib mylib.cpp -dynamiclib -lmylib g++ -o mylib mylib.cpp -dynamiclib -ldmylib

      在这个例子中,-dynamiclib 参数告诉编译器生成动态库的链接文件。-lmylib 参数告诉编译器链接到 mylib.somylib.so.1 这个动态链接库。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部