[英]g++ compilation using 'include' statement with non-relative paths (C++)
我正在嘗試使用g ++作為編譯器與第三方庫一起編譯c ++代碼。 我的main.cpp需要包含頭文件core.hpp,而core.hpp需要包含cvdef.h,而cvdef.h需要包含interface.h。
include語句中這三個標頭的路徑如下:
#include "opencv2/core.hpp"
#include "opencv2/core/cvdef.h"
#include "opencv2/core/hal/interface.h"
請參見下圖中的文件結構。
當我編譯main.cpp時,它將找到core.hpp。 但是,core.hpp似乎找不到cvdef.h,因為它正在'opencv2'文件夾的“ core”文件夾中查找(位於下面的級別)。 在不更改include語句中的路徑的情況下,我將如何處理?
我當前在Windows下使用g ++的編譯語句是:
g++ main.cpp -o main
似乎OpenCV2希望在標准位置中查找頭文件。
您可以使用-I
(大寫i)選項添加到標准位置列表,並指定要添加的路徑。
在您的情況下,您應該可以做到
g++ main.cpp -o main -Iopencv2/core
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.