歸納一下部分cmake編譯過程中文件路徑類型的問題,以及對應解決方法:
1. Include could not find load file:
XXX
XXX.cmake 文件需在 CMAKE_MODULE_PATH里, 既 list(APPEND CMAKE_MODULE_PATH "${the path of XXX.cmake}") 。
2. No such file or directory:
#include <XXX.h>
XXX.h文件如果是在本工程里, 路徑需要被添加到include_directories()里,
如果XXX.h在find_package()的外部依賴包里,需把該包添加在target_link_libraries的PUBLIC或者PRIVATE后面。
3. Cannot find source file:
XXX.cpp
add_executable里的XXX.cpp文件需要添加相對路徑(所謂相對,是相對CMAKE_CURRENT_SOURCE_DIR而言)。
4. Cannot find -lXXX:
libXXX.a 或者 libXXX.so文件沒有添加進link_directories()里。