gpt4 book ai didi

c++ - 我如何通过终端命令在 mac 上编译它

转载 作者:搜寻专家 更新时间:2023-10-31 00:57:41 25 4
gpt4 key购买 nike

我正在使用 xcode 编译我的 opencv 项目,我有一些设置如下:

    HEADER_SEARCH_PATHS = /usr/local/include

LIBRARY_SEARCH_PATHS = /usr/local/lib

OTHER_LDFLAGS = -lopencv_calib3d -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgcodecs -lopencv_imgproc -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videoio -lopencv_videostab

我想知道我应该通过终端命令而不是设置 xcode 来写什么。

最佳答案

如果您使用 homebrew 安装了 OpenCV 并且还使用 homebrew 安装了 pkgconfig 包,则该包可以告诉您您需要的设置本身 - 比您猜测的要准确得多。

最简单的方法是让 pkgconfig 列出它知道的所有包:

pkg-config --list-all | grep -i opencv

opencv OpenCV - Open Source Computer Vision Library

所以,现在你知道包名是简单明了的 opencv,你可以像这样找到你需要的标志:

pkg-config --cflags --libs opencv
-I/usr/local/Cellar/opencv/2.4.12_2/include/opencv \
-I/usr/local/Cellar/opencv/2.4.12_2/include \
-L/usr/local/Cellar/opencv/2.4.12_2/lib \
-lopencv_calib3d -lopencv_contrib -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_gpu -lopencv_highgui -lopencv_imgproc -lopencv_legacy -lopencv_ml -lopencv_nonfree -lopencv_objdetect -lopencv_ocl -lopencv_photo -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videostab

这意味着您的编译和链接变得简单:

g++ $(pkg-config --cflags --libs opencv) program.cpp -o program

如果您在 Makefile 中执行此操作,则需要将 $ 符号加倍。

如果你的系统没有安装好,你可能需要自己寻找pkgconfig文件。所以你会这样做:

find /usr/local -name "opencv*pc"
/usr/local/Cellar/opencv/2.4.12_2/lib/pkgconfig/opencv.pc

然后您可以像这样访问该文件:

pkg-config --cflags --libs /usr/local/Cellar/opencv/2.4.12_2/lib/pkgconfig/opencv.pc

关于c++ - 我如何通过终端命令在 mac 上编译它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36995438/

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