CMake and pugixml



我是CMake的新手,很难理解如何使用它。

我有一个跨平台的 c++ 项目。它使用 CMake 构建,我的CMakeLists.txt与项目一起位于一个名为 MyProject 的文件夹中。我检查了一个 pugixml git 子模块,它现在存在于 MyProject/pugixml 下,其源代码在 MyProject/pugixml/src 下。但是,它有自己的CMake文件:MyProject/pugixml/CMakeLists.txt

如何修改我的CMakeLists.txt以构建和使用 pugixml?我尝试了类似的东西

include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${GENERATED_HEADER_OUTPUT_DIRECTORY} pugixml/src)

add_library(PugiXML deps/pugixml/src/pugiconfig.hpp deps/pugixml/src/pugixml.cpp deps/pugixml/src/pugixml.hpp)

add_subdirectory(pugixml)有不同的组合(这些是我在 Github 上找到的示例(,但它不起作用 - 我得到unresolved external symbol错误,所以我假设 cpp 从未被编译过。

试试这个:

add_subdirectory(pugixml)
target_link_libraries(MyProject PugiXML)

假设 PugiXML/pugixml 中的 CMake 文件公开的目标名称。

相关内容

  • 没有找到相关文章

最新更新