我设法建立了llvm和clang,现在我正在尝试根据clang docs创建一个ClangTool .但是当我尝试构建它时,我收到以下错误:
CMake Error at tools/clang/tools/loop-convert/CMakeLists.txt:6 (target_link_libraries):
The keyword signature for target_link_libraries has already been used with
the target "loop-convert". All uses of target_link_libraries with a target
must be either all-keyword or all-plain.
The uses of the keyword signature are here:
* cmake/modules/LLVM-Config.cmake:105 (target_link_libraries)
* cmake/modules/AddLLVM.cmake:771 (target_link_libraries)
Run Code Online (Sandbox Code Playgroud)
我目前的CMakeLists.txt是:
set(LLVM_LINK_COMPONENTS support)
add_clang_executable(loop-convert
LoopConvert.cpp
)
target_link_libraries(loop-convert
clangTooling
clangBasic
clangASTMatchers
)
Run Code Online (Sandbox Code Playgroud) 我无法将 glm 库与我的可执行文件链接。我尝试通过
和cmake 变量进行链接${GLM_INCLUDE_DIRS},但它不起作用。${GLM_LIBRARIES}${GLM_LIBRARY_DIRS}
如何将 glm 的库和包含链接到我的可执行文件?
我正在使用find_package()方法:
find_package(glm REQUIRED PATHS "${GLM_BINARY_DIR}" NO_DEFAULT_PATH)
Run Code Online (Sandbox Code Playgroud)
没有任何问题find_package() ,但下面的这些状态消息不显示任何内容:
message(STATUS "GLM includes ${GLM_INCLUDE_DIRS}")
message(STATUS "GLM libraries ${GLM_LIBRARY_DIRS}")
Run Code Online (Sandbox Code Playgroud)