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_pchtarget 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.pchfile 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