在 64 位 mac 上编译 OpenCV 代码 [英] Compiling OpenCV code on a 64-bit mac

查看:36
本文介绍了在 64 位 mac 上编译 OpenCV 代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近继承了一些 OpenCV 代码.我在我的 mac 上安装了 openCV,内置在 XCode 中,然后编译并成功运行了我的第一个 openCVhello world"-ish 程序.

I recently inherited some OpenCV code. I installed openCV on my mac, built in in XCode, and then compiled and successfully ran my first openCV "hello world"-ish program.

现在我正在尝试运行给定的代码,但出现错误,让我相信这是原始代码在 32 位 Windows 系统上运行而我在 64 位 Mac 上运行的问题.

Now I'm trying to run the code I was given, but I get errors that lead me to believe it's an issue with the original code being run on a 32-bit Windows system and mine being on a 64-bit Mac.

当我通过输入make"运行 Makefile 时

When I run the Makefile by entering "make"

CC = g++
CFLAGS =
LDFLAGS = -I/usr/local/include/opencv -lm -lopencv_core -lopencv_highgui -lopencv_video
ALL = vision

all: $(ALL)

vision: vision.o
    $(CC) $(LDFLAGS) -o $@ $^

vision.o: vision.cpp
    $(CC) $(LDFLAGS) -c $<

.PHONY: clean

clean:
    rm -rf *.o core* $(ALL)

我得到以下输出...

g++ -I/usr/local/include/opencv -lm -lopencv_core -lopencv_highgui -lopencv_video -o vision vision.o
Undefined symbols for architecture x86_64:
  "cv::equalizeHist(cv::Mat const&, cv::Mat&)", referenced from:
      _main in vision.o
  "cv::threshold(cv::Mat const&, cv::Mat&, double, double, int)", referenced from:
      _main in vision.o

ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make: *** [vision] Error 1

我很困惑;这是否意味着我安装的 OpenCV 是错误的,需要更改代码(特别是那些方法),或者其他完全不同的东西?

I'm confused; does this mean my install of OpenCV is wrong, the code (those methods specifically) needs to be changed, or something else entirely?

注意:当我从 vision.cpp 代码中注释掉有问题的方法时,一切都编译得很好.

Note: When I comment out the problem methods from the vision.cpp code, everything compiles just fine.

推荐答案

opencv_imgproc 添加到您的 LDFLAGS:

Add opencv_imgprocto your LDFLAGS:

LDFLAGS = -I/usr/local/include/opencv -lm -lopencv_core -lopencv_highgui -lopencv_video -lopencv_imgproc

这篇关于在 64 位 mac 上编译 OpenCV 代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆