在我的使用ninja作为后端的CMake构建中,没有导出符号的DLL总是重新链接,所以我使用MODULE
关键字add_library
来建议这些DLL {{3 }和here。
但是现在这些DLL没有用它们创建的相应PDB文件(或者它们可能是使用默认名称在对象目录中生成的,而不是在带有库名的输出目录中生成的。)
add_library docs暗示它仅适用于可执行文件和SHARED库(不提及MODULE):
链接器生成的... .pdb文件的输出名称 可执行文件或共享库目标。
如何在具有正确名称的MODULE库的预期位置创建PDB文件?
答案 0 :(得分:0)
我回到使用SHARED库并添加了一个虚拟符号,从每个这样的库中导出。这样,cmake文件与所有其他库保持一致。