我正在尝试编写 cmake 规则以在 linux 上使用 boost.python 为 python 构建动态加载库。我想使用 'foo' 作为 python 模块名称。因此,该库必须称为 foo.so
。
但是默认情况下,cmake 使用标准的库命名规则,所以如果我写
add_library(foo foo.cpp)
我会在输出时得到 libfoo.so
。
甚至 set_target_properties(foo PROPERTIES OUTPUT_NAME "foobar")
将创建 libfoobar.so
.
如何改变这种行为?
最佳答案
您可以使用此行取消设置前缀:
set_target_properties(foo PROPERTIES PREFIX "")
关于python - 动态加载库的 CMake 输出名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1564696/