【问题标题】:In compiling C++, how to make a .a file to .so? [duplicate]在编译 C++ 时,如何将 .a 文件制作为 .so? [复制]
【发布时间】:2012-11-23 10:23:08
【问题描述】:

可能重复:
Convert a Static Library to a Shared Library (create libsome.so from libsome.a): where’s my symbols?

在使用 Cmakefile 编译 C++ 时,如何从 .a 静态库文件中创建动态库 .so 文件?

【问题讨论】:

  • 你使用的是哪个编译器?

标签: c++ makefile


【解决方案1】:

如果您正在构建库,那么您正在使用 CMake(我从您的问题中猜测),它的定义如下:

add_library(name-of-library
    source1.cpp
    source2.cpp
)

您可以在库名称后添加您要构建的库类型。它可以是STATICSHARED。所以如果你想建立一个共享库(.so),那么上面的应该是这样转换的:

add_library(name-of-library SHARED
    source1.cpp
    source2.cpp
)

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2014-01-15
    • 1970-01-01
    • 1970-01-01
    • 2013-11-26
    • 1970-01-01
    • 1970-01-01
    • 2020-02-15
    • 2012-03-03
    • 2015-01-17
    相关资源
    最近更新 更多