使用CMake生成.dll文件

41

我在Windows XP中有以下的C文件。 optBladWriter.c optWriteNlpEmpsFile.c 我想要为这些代码生成DLL。 我使用了add_library指令。 我的make文件如下:

CMAKE_MINIMUM_REQUIRED ( VERSION 2.6)
add_library (optFmg optBladWriter.c optWriteNlpEmpsFile.c) 

在使用命令提示符运行 CMake 后,会创建 Project.sln。我将其导入 Visual Studio 并进行了构建,得到了 optFmg.lib 文件。但我想要的是 optFmg.dll 文件。

您能否帮助我使用 cmake 生成上述情况下的 dll 文件?是否有类似于 add_library 的特定命令?

1个回答

62

如官方文档所述,库的默认类型由BUILD_SHARED_LIBS 变量确定。您可以使用以下方式显式请求共享库:

add_library(yourlib SHARED file.c ...)

6
将链接添加到CMake命令列表中,点赞+1。这是一个很棒的资源,因为所有命令都在一个HTML页面上,你可以直接在网页上搜索你需要的内容。 :-) - MikeyE
这也会将所有依赖项构建为 .dll。有没有办法只为 file.c 本身生成 .dll - Ford O.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接