关于包括新类的基本问题

Basic cmake question on including a new class

本文关键字:问题 于包括 新类      更新时间:2023-10-16

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

add_executable(book_printer
    BookPrinter.cpp
)
target_link_libraries(book_printer
    ${MD_API_LIBRARIES}
    rt
    z
)

现在我想在同一目录中添加一个带有 MyBookWrapper.h 和 MyBookWrapper.cpp 的新类"MyBookWrapper"。我的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?

好吧,你应该做的第一件事就是在你的add_executable语句中添加MyBookWrapper.cpp

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