问题描述
root/
CMakeLists.txt
mylibrary.hpp
test/
CMakeLists.txt // included from root's CMakeLists
A.cpp //includes<mylibrary.hpp>
B.cpp // also
C.cpp // also
...
Z.cpp // also
我确信可以通过预编译 (pch) mylibrary.hpp
如果可以,我如何告诉 CMake 使用预编译头文件?
此外,该项目使用不同的编译器、gnu、clang、nvcc、intel(不同的构建配置),因此预编译头的生成可能并不总是可用。
CMake 的所有测试都可以正常工作。
我尝试使用 target_precompile_headers
作为
target_precompile_headers(A PUBLIC ../mylibrary.hpp)
target_precompile_headers(B PUBLIC ../mylibrary.hpp)
...
但它实际上慢,因为它为每个测试生成一个新的预编译头实例。 (PRITAVE
给出相同(缓慢)的结果,使用 INTERFACE
没有任何不同。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)