使用 MODULE 关键字的 CMake add_library 不会创建 PDB 文件

CMake add_library using the MODULE keyword doesn't create PDB file

在我使用 ninja 作为后端的 CMake 构建中,没有导出符号的 DLL 总是重新链接,因此我按照建议对这些 DLL 使用 MODULE 关键字和 add_library here and in the add_library docs.

但是现在那些DLL没有用它们创建相应的PDB文件(或者它们可能是在默认名称的对象目录中生成的,而不是在输出目录中的库名称)。

PDB_NAME docs 暗示它仅适用于可执行文件和共享库(未提及模块):

Output name for the ... .pdb file generated by the linker for an executable or shared library target.

如何获取在预期位置创建的具有模块库正确名称的 PDB 文件?

我回到使用 SHARED 库并添加了一个虚拟符号以从每个这样的库中导出。这样 cmake 文件与所有其他库保持一致。