gpt4 book ai didi

c++ - Cmake查找匹配cpp代码的头文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:04:35 25 4
gpt4 key购买 nike

我知道有上千个这样的问题,但即使看了这些问题我仍然在挣扎。

我的目录树

./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} )

最佳答案

您没有链接您的 CascadeLoader.cpp 文件,这就是您收到 undefined reference 错误的原因。

尝试

add_executable( ASLInterpreter src/main/cpp/main.cpp /src/main/cpp/CascadeLoader.cpp)

您还可以将您的 .cpp 文件组合在一起,这在您有很多文件时很有用。

set(include /src/main/cpp/CascadeLoader.cpp
/src/main/cpp/example.cpp)
add_executable( ASLInterpreter src/main/cpp/main.cpp ${include})

关于c++ - Cmake查找匹配cpp代码的头文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49650287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com