gpt4 book ai didi

c++ - 使用非相对路径的 'include' 语句的 g++ 编译 (C++)

转载 作者:行者123 更新时间:2023-11-30 03:22:15 25 4
gpt4 key购买 nike

我正在尝试使用 g++ 作为编译器使用第三方库编译 C++ 代码。我的 main.cpp 需要包含头文件 core.hpp,而 core.hpp 需要包含 cvdef.h,而 cvdef.h 需要包含 interface.h。

include语句中这三个header的路径如下:

#include "opencv2/core.hpp"
#include "opencv2/core/cvdef.h"
#include "opencv2/core/hal/interface.h"

请参见下图中的文件结构。

当我编译 main.cpp 时,它会找到 core.hpp。然而,core.hpp 似乎无法找到 cvdef.h,因为它正在“opencv2”文件夹的“核心”文件夹中查找(低于一个级别)。在不更改 include 语句中的路径的情况下,我将如何处理?

我目前在Windows下使用g++的编译语句是:

g++ main.cpp -o main

enter image description here

最佳答案

OpenCV2 似乎想在标准位置寻找头文件。

您可以使用 -I(大写 i)选项添加到标准位置列表,指定要添加的路径。

在您的情况下,您应该可以使用

g++ main.cpp -o main -Iopencv2/core

关于c++ - 使用非相对路径的 'include' 语句的 g++ 编译 (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51284251/

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