mac系统怎么编opencv_在64位mac上编译OpenCV代码

bd96500e110b49cbb3cd949968f18be7.png

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.

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.

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)

I get the following output…

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

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?

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

解决方案

Add opencv_imgprocto your LDFLAGS:

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在mac上使用brew安装opencv_contrib模块,可以按照以下步骤进行操作: 1. 首先,确保已经安装了brew。如果没有安装,可以在终端中运行以下命令进行安装: ``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 2. 接下来,使用brew安装opencvopencv_contrib模块。在终端中运行以下命令: ``` brew install opencv brew install opencv_contrib ``` 3. 安装完成后,你可以在/usr/local/Cellar/opencv_contrib目录中找到opencv_contrib模块的源代码。 请注意,这种方法安装的是最新的稳定版本opencv_contrib模块,并不是最新的master分支代码。如果你需要使用最新的master分支代码,可以按照官方的编译介绍中所提到的步骤进行配置、编译和安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [为OPENCV添加freetype支持并显示中文字符(在mac编译opencv及contrib库)](https://blog.csdn.net/weixin_34304013/article/details/94201026)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [Mac 安装使用 OpenCV 图像处理神器](https://blog.csdn.net/wbf1013/article/details/120619317)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值