【问题标题】:Basic cmake question on including a new class关于包含新课程的基本 cmake 问题
【发布时间】:2019-01-12 21:02:03
【问题描述】:

目前我的项目只有一个 BookPrinter.cpp 文件,其目录中的 CMakeList.txt 包含

add_executable(book_printer
    BookPrinter.cpp
)

target_link_libraries(book_printer
    ${MD_API_LIBRARIES}
    rt
    z
)

现在我想在同一个目录中添加一个新类“MyBookWrapper”,其中包含 MyBookWrapper.h 和 MyBookWrapper.cpp。我的 BookPrinter.cpp 中有 include BookWrapper.h

但是当我编译时我得到了这个错误

BookPrinter.cpp:blah blah blha incomprehensible code : undefined reference to `MyBookWrapper::Refresh()'
collect2: error: ld returned 1 exit status

我应该添加什么来包含这个新的 MyBookWrapper?

【问题讨论】:

    标签: c++ cmake linker


    【解决方案1】:

    嗯,您应该做的第一件事是将MyBookWrapper.cpp 添加到您的add_executable 语句中。

    您所拥有的是一个链接器错误,这意味着它无法找到您的新类的代码,它与头文件无关。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-29
      • 1970-01-01
      • 2013-10-10
      • 1970-01-01
      相关资源
      最近更新 更多