Как мне связать yaml-cpp в моем CMakelists.txt ?

#c #cmake #yaml #yaml-cpp

#c #cmake #yaml #yaml-cpp

Вопрос:

Итак, в настоящее время у меня есть структура проекта, которая выглядит следующим образом, и есть cmakelists.txt в каждом каталоге:

 /app
    /source
          /myApp
                /<file where I want to use yaml-cpp/yaml.h>
          /lib
              /yaml-parser(yaml-cpp)
  

Когда у меня заканчиваются исходные сборки без каких-либо упоминаний yaml-cpp, он без проблем компилирует весь каталог (скомпилированы предоставленные примеры yaml-cpp). Однако, когда я пытаюсь добавить «yaml-cpp /yaml.h», компилятор сообщает, что такого файла или каталога нет. Мне интересно, где и как я связываю свой проект и yaml-cpp. В настоящее время я не внес никаких изменений в yaml-cpp cmakelists.txt https://github.com/jbeder/yaml-cpp

Ответ №1:

Вы должны add_subdirectory использовать свой корень CMakeLists.txt и yaml-cpp цель сборки. Тогда вы сможете связать с ним. Просто добавьте yaml-cpp в список target_link_libraries вашего двоичного файла.