shaderc
shaderc copied to clipboard
Including shaderc/CMakeLists.txt as suggested in README not working
I want to use shaderc (including glslc) in my project, such that I can compile glsl shaders (including #include directives) in my code.
In the libshaderc/README.md it says:
If the external project uses CMake, then shaderc/CMakeLists.txt can be included into the external project's CMake configuration and shaderc can be used as a link target. This is the simplest way to use libshaderc in an external project.
So I went ahead and did this:
include(3rdparty/shaderc/CMakeLists.txt)
target_link_libraries(${PROJECT_NAME} PRIVATE
shaderc_combined
)
But I get the following errors:
CMake Error at 3rdparty/shaderc/CMakeLists.txt:69 (include): include could not find requested file:
cmake/setup_build.cmake
And because of this, other errors (e.g. Unknwon CMake command "find_host_package" follow).
It doesn't helpf, if I include these other cmake files in my own CMakeLists.txt either.
My project structure is
MyProj
|
|----- CMakeLists.txt
|
|----- 3rdparty/
| |
| | ----- shaderc/CMakeLists.txt
Does it work better if you do add_subdirectory(3rdparty/shaderc) instead of include?
I have the same error. I'm using add_subdirectory and I still get the same error
Sorry, I had gone back to using the shaderc packaged with the VulkanSDK and adding my own shader includer class, I cannot say if the add_subdirectory would have fixed my issue.
Are you changing CMAKE_MODULE_PATH? It looks like it's looking for a file in the local cmake folder and is unable to find it?