I am trying to use precompiled headers.
- One library target (
erhe_pch
) is used for creating PCH to be shared with other targets, withREUSE_FROM
. - When I build
erhe_pch
target in VS, the pch file (cmake_pch.pch
) is created as expected. - When I build any targets that use
target_precompile_headers(target REUSE_FROM erhe_pch)
, thecmake_pch.pch
file disappears, and compiler fails withCannot open precompiled header file
.
CMakeLists.txt for erhe_pch
:
add_library(erhe_pch)
target_sources(erhe_pch PRIVATE erhe_pch/dummy.cpp)
target_precompile_headers(erhe_pch PUBLIC <chrono> <filesystem> <memory> <string> <vector>)
CMakeLists.txt for erhe_verify
:
add_library(erhe_verify)
add_library(erhe::verify ALIAS erhe_verify)
target_sources(erhe_verify PRIVATE erhe_verify/verify.cpp PUBLIC erhe_verify/verify.hpp)
target_include_directories(erhe_verify INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_precompile_headers(erhe_verify REUSE_FROM erhe_pch)
cmake version 4.0.1
Visual Studio Community 2022 / 17.13.6