问题复现
当algos_obj中用到了预编译头文件的cmake_pch.obj。
然后另一个dll用到了这个obj,还用了这句,target_precompile_headers(${TARGET_NAME}_cpp REUSE_FROM algos_obj) 就会出问题。
cmake_pch.obj : warning LNK4042: 对象被多次指定;已忽略多余的指定
问题解决:
删掉这句
target_precompile_headers(${TARGET_NAME}_cpp REUSE_FROM algos_obj)
确实也work。因为有些cpp中删掉了include .h 也可以编译通过。