opencv4.2 cmake的使用

6 篇文章 1 订阅
5 篇文章 2 订阅

之前一直用3.2的版本,和我最深的印象是 pkg-config 工具。其实3.2版本也有cmake - /usr/local/share/OpenCV,但是没有用过。

在安装了opencv4.2版本过后,我继续使用 pkg-config 工具,发现编译过程出错,这让我很费解。

在对pkg-config 路径一翻查找后发现并没有更新 opencv.pc 文件:

$ cat /usr/local/lib/pkgconfig/opencv.pc 
# Package Information for pkg-config

prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include

Name: OpenCV
Description: Open Source Computer Vision Library
Version: 3.2.0
Libs: -L${exec_prefix}/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dpm -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_rgbd -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_face -lopencv_plot -lopencv_dnn -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xobjdetect -lopencv_objdetect -lopencv_ml -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core
Libs.private: -L/home/lhpc04/anaconda3/lib -lpng -ltiff -ljasper -ljpeg -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lgthread-2.0 -ldc1394 -lavcodec-ffmpeg -lavformat-ffmpeg -lavutil-ffmpeg -lswscale-ffmpeg -lhdf5 -L/usr/lib/x86_64-linux-gnu -lrt -lpthread -lz -ldl -lm -ltbb
Cflags: -I${includedir_old} -I${includedir_new}

在一步查看安装日志时,发现 opencv 抛弃了 pkg-config 工具,而是使用 cmake 来做其他项目的引用开发。

-- Installing: /usr/local/lib/cmake/opencv4/OpenCVModules.cmake
-- Installing: /usr/local/lib/cmake/opencv4/OpenCVModules-release.cmake
-- Installing: /usr/local/lib/cmake/opencv4/OpenCVConfig-version.cmake
-- Installing: /usr/local/lib/cmake/opencv4/OpenCVConfig.cmake

cmake 工具也接触过,不过还是不够熟悉,我这里弄个模板,供大家参考:

cmake_minimum_required(VERSION 3.2)
# 项目名称
set(project_name "main")
# 导入 opencv 库
find_package(OpenCV REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
include_directories(${OpenCV_INCLUDE_DIRS} ./linear-regression )
add_executable(${project_name} main.c)
target_link_libraries(${project_name} ${OpenCV_LIBS})

我还是挺支持cmake的,这样windows和linux的项目兼容性就更好。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值