【发布时间】:2018-09-13 23:21:12
【问题描述】:
我知道有上千个这样的问题,但即使在看了这些问题之后我也很苦恼。
我的目录树
./src/main/cpp/main.cpp
./src/main/cpp/CascadeLoader.cpp
./resources/headers/CascadeLoader.h
如果在 main.cpp 我使用
#include "CascadeLoader.cpp"
我的代码有效,但如果我这样做了
#include "CascadeLoader.h"
我得到一个构建错误
undefined reference to CascadeLoader::CascadeLoader()
我添加的 CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
project( ASLInterpreter )
find_package ( OpenCV REQUIRED )
include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable( ASLInterpreter src/main/cpp/main.cpp )
target_link_libraries( ASLInterpreter ${OpenCV_LIBS} )
【问题讨论】:
-
不要include cpp files,除非您确切地知道自己在做什么。你的 add_executable 调用是什么样的?
-
刚刚编辑了代码以添加我的整个 cmake。我知道添加 cpp 文件的问题,我只是确保这是一个 cmake 问题而不是编码
-
我想我明白了
-
如果您自己解决了问题,请分享您的答案,这对未来的访问者会更好