gpt4 book ai didi

c++ - 无法在 OS X 上包含 opencv3

转载 作者:行者123 更新时间:2023-11-30 16:47:13 24 4
gpt4 key购买 nike

我正在 OS X El cap 上用 C++ 编写一个非常小的项目,通过 brew install opencv3 从 Homebrew 安装了 opencv3,我尝试了官方示例的操作,并将这一行包含在我的文件顶部

#include <opencv2/opencv.hpp>

它返回错误说

fatal error: 'opencv2/opencv.hpp' file not found
#include <opencv2/opencv.hpp>

尝试使用双引号而不是 <>,也不起作用,尝试了其他模块,例如

#include "opencv2/highgui/highgui.hpp"
#include "opencv2/highgui.hpp"

无论有没有模块路径(highgui/),或者<>,总是提示文件未找到错误

这是我的 Makefile 的一部分:

CC=clang++
CFLAGS= -Wall -g -std=c++0x
LFLAGS=

CFILES=blahblah.cpp
HFILES=blahblah.hpp
OFILES=blahblah.o

all: main

%.o: %.cpp $(HFILES)
$(CC) -c $(CFLAGS) $< -o $@ $(LFLAGS)

main: $(OFILES) $(HFILES)
$(CC) $(CFLAGS) $(OFILES) -o main $(LFLAGS)

我在 makefile 的搜索路径中包含了包含目录,并收到此错误:

clang++ -Wall -g -std=c++0x main.o datatools.o extract.o -o main -I/usr/local/Cellar/opencv3/3.2.0/include -I/usr/local/include
Undefined symbols for architecture x86_64:
"cv::String::deallocate()", referenced from:
cv::String::~String() in main.o
cv::String::operator=(cv::String const&) in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [main] Error 1

顺便说一下,opencv2 工作正常,我不需要做任何事情,我应该如何让 opencv3 库工作?

最佳答案

您需要在项目的build设置中的 header 搜索路径中指定 header 目录(/usr/local/Cellar/your_opencv_header_dir)。

您可能还需要对库执行相同的操作或将它们包含到项目中。

关于c++ - 无法在 OS X 上包含 opencv3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43404500/

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