当我为调试版本安装我的库时,也会复制pdb文件。
我对发布版本也有同样的想法,但CMake不这样做。所以我必须手动选择CMAKE_BINARY_DIR中的* .pdb文件并复制它们。
基本上,我该怎么做?或者还有其他方法可以解决这个问题吗?
答案 0 :(得分:2)
这样做的一种方法是使用Cmake"文件"功能如此。
if(CMAKE_BUILD_TYPE EQUAL "RELEASE")
file(GLOB filelist ${PATH_TO_PDB_FILES}/*.pdb)
file(COPY ${filelist} DESTINATION ${PATH_TO_PDB_DESTINATION})
endif(CMAKE_BUILD_TYPE EQUAL "RELEASE")
第一个"文件"函数调用使用" GLOB"选项并生成位于" PATH_TO_PDB_FILES"中的.pdb文件的列表(称为"文件列表"); 。目录
第二个"文件"函数调用使用" COPY"选项,它使用第一个"文件生成的文件列表"函数调用并将这些文件复制到" PATH_TO_PDB_DESTINATION" 。目录
我还将if语句用于检查您是否正在进行发布构建。 (假设您只想在发布版本上执行此操作。)
编辑:如果我理解正确,您希望在安装阶段复制pdb文件。如果是这种情况,应该这样做:
INSTALL(DIRECTORY ${PATH_TO_PDB_FILES}
DESTINATION ${PATH_TO_PDB_DESTINATION}
CONFIGURATIONS Release
FILES_MATCHING
PATTERN *.pdb
)