0

可能重复:
将静态库转换为共享库(从 libsome.a 创建 libsome.so):我的符号在哪里?

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

4

1 回答 1

2

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

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

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

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

希望这可以帮助。

于 2012-11-23T10:51:56.797 回答