0

我是 cmake 的新手,我很确定这是我在这里面临的问题。

我正在尝试使用在 cmake 项目中编写的yaml-cpp库到我自己的 cmake 项目中。我运行以下命令在它自己的目录中构建和安装 yaml-cpp。mkdir build, cd build, cmake .., make, 然后sudo make install在运行这些命令后没有发生错误。

现在在我自己的项目中,我在适当的 cmake 项目中有一个 c++ 代码文件。要使用 yaml-cpp 库,我将它包含在#include "yaml-cpp/yaml.h", 中,并在该子目录的CmakeLists.txt文件中添加以下两个:

find_package(yaml-cpp REQUIRED)
target_link_libraries(yaml-cpp)

但是,当我尝试编译项目时,它给了我以下输出:

handstandForm.cpp:(.text+0x4820): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)

我想指出,当使用 yaml-cpp 库删除任何代码行时,该项目可以完美编译并运行而没有任何错误。可能是什么问题呢?请帮忙。

4

0 回答 0