当前位置:网站首页 > C++编程 > 正文

mac cpp编译_linux编译安装

1. 准备

  1. 从github获取opencv和opencv_contrib源码,前者为opencv核心库后者为未被收录的一些新颖和实用的模块
cd ~/<你的代码存放目录> git clone https://github.com/opencv/opencv.git git clone https://github.com/opencv/opencv_contrib.git 
  1. 检查自己机器的环境,看是否满足最低要求,此处为4.10.0版本的要求
    1. CMake>=3.9
      • 检查CMake版本cmake --version
    2. Git
    3. Python >= 2.7 且 Numpy >= 1.5

2. 编译安装

  1. 配置
    1. cd ~/<你的代码存放目录>/opencv
    2. mkdir build
    3. cd buid
    4. cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=ON -DBUILD_DOCS=ON -DOPENCV_EXTRA_MODULES_PATH=~/<你的代码目录>/opencv_contrib-4.10.0/modules -DCMAKE_INSTALL_PREFIX=/usr/local/opencv_4.10.0 ../
      1. -D 为定义一个CMake变量
      2. CMAKE_BUILD_TYPE : Release or Debug
        1. Release
          1. 优化:Release构建类型旨在最大程度地优化代码以提高性能。它通常会启用各种编译器优化选项,例如函数内联、循环展开和代码消除,以生成更小且执行速度更快的可执行文件。
          2. 调试信息:为了减小可执行文件的大小和提高运行效率,Release版本通常会禁用调试符号和额外的调试功能。这意味着,与Debug版本相比,Release版本的可执行文件更难以进行调试。
          3. 使用场景:Release版本适合在最终部署到生产环境或进行性能测试时使用。
        2. Debug
          1. 优化:与Release版本不同,Debug构建类型通常用于开发和调试阶段。为了保留变量和函数的实际布局并方便调试,Debug版本通常不会进行优化或只进行最低级别的优化。
          2. 调试信息:Debug版本包含了调试符号和额外的调试功能,例如运行时检查和断言。这些调试信息使得开发人员能够在调试器中更容易地定位和分析问题。
          3. 生成文件:在Debug模式下,编译器还会生成一些辅助文件,如调试信息文件(如Windows系统中的.pdb文件),以便在调试时使用。
          4. 使用场景:Debug版本适合在开发过程中进行代码调试和测试。
      3. BUILD_EXAMPLES: 是否构示例代码
      4. BUILD_DOCS:是否构建代码
      5. OPENCV_EXTRA_MODULES_PATH:扩展模块路径
      6. CMAKE_INSTALL_PREFIX:install时的安装路径
  2. 编译
    1. make -j7 # 用七个并行线程去编译
  3. 安装
    1. sudo make install
  4. 配置环境变量
    1. vi ~/.zshrc根据你的shell决定
export OPENCV_HOME=/usr/local/opt/opencv export PATH=$OPENCV_HOME/bin:$PATH export PKG_CONFIG_PATH=$OPENCV_HOME/lib/pkgconfig:$PKG_CONFIG_PATH export CPLUS_INCLUDE_PATH=$OPENCV_HOME/include:$CPLUS_INCLUDE_PATH export LIBRARY_PATH=$OPENCV_HOME/lib:$LIBRARY_PATH 
2. `source ~/.zshrc` 

3.验证

#include <opencv2/opencv.hpp>  #include <iostream>  using namespace cv; int main(int argc, char argv) { Mat image = imread("/<图片路径>"); if (image.empty()) { std::cout << "Could not open or find the image" << std::endl; return -1; } namedWindow("Display window", WINDOW_AUTOSIZE); imshow("Display window", image); waitKey(0); return 0; } 

注:CMake文件中要配置 find_package(OpenCV)并通过OpenCV_DIR=<path_to_build_or_install_directory> 来指明路径

到此这篇mac cpp编译_linux编译安装的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 推荐几款C++初学者用的编程软件2024-11-07 17:00:09
  • c++类和对象_c++ string类的常用方法2024-11-07 17:00:09
  • c++的题目练手_c++练题比较好的软件2024-11-07 17:00:09
  • c 全排列函数_C++排列组合2024-11-07 17:00:09
  • aide c++插件_c++编程app2024-11-07 17:00:09
  • C++学习笔记(二、C++基本概念)2024-11-07 17:00:09
  • linux编写c++程序_Linux有必要学吗2024-11-07 17:00:09
  • 泛型程序设计与c++标准模板库_高质量c++编程指南2024-11-07 17:00:09
  • c++格式化输入输出_cout空格2024-11-07 17:00:09
  • 子集 leetcode_子集和真子集2024-11-07 17:00:09
  • 全屏图片