【教程】CentOS7 编译安装opencv3.0.0

版权声明:感谢观看! https://blog.csdn.net/qq153471503/article/details/83585126

《CentOS7 编译安装opencv3.0.0》


开发环境

  • CentOS7 x64
  • gcc 4.8.5
  • vmware10虚拟机

注意:本教程均在root权限下进行!


安装教程

  1. 安装依赖库
    yum -y install gcc gcc-c++ gtk2-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool nasm numpy
  2. 安装cmake
    yum -y install cmake-gui
  3. 配置

    下载opencv3.0.0源码包:https://opencv.org/releases.html

    1. 创建安装目录
      mkdir /opt/opencv-3.0.0
      cd /opt/opencv-3.0.0
      然后将opencv源码包放到该目录下。
    2. 解压
      unzip opencv-3.0.0.zip
      cd opencv-3.0.0
    3. 配置
      1. 在opencv目录下创建编译目录
        mkdir build
      2. 启动cmake
        cmake-gui
      3. 选中目录后点击config
        在这里插入图片描述
      4. 选择Makefiles工程
        在这里插入图片描述
      5. 下载图中显示的文件时很慢,如果长时间卡住或者出错,手动下载该文件放入到目录: opencv-3.0.0\3rdparty\ippicv\downloads\linux-8b449a536a2157bcad08a2b9f266828b下,然后重新Configure即可。
        下载地址:https://sourceforge.net/projects/opencvlibrary/files/3rdparty/ippicv/
        在这里插入图片描述
      6. 配置
        1. 取消勾选:WITH_CUDA和WITH_IPP
        2. 勾选:WITH_OPENGL
        3. 修改CMAKE_BUILD_TYPE:选择Release,这是编译的opencv版本
        4. 修改CMAKE_INSTALL_PREFIE:改为/opt/opencv-3.0.0,这是opencv编译完成后的安装目录
        5. 再次config
        6. 现在没有了红色条目,点击Generate生成Makefile工程
          在这里插入图片描述
        7. 修改编译选项文件,防止编译出错
          gedit ./cmake/OpenCVCompilerOptions.cmake在这里插入图片描述
  4. 编译
    cd build
    make && make install
    等待编译和安装完成…
  5. 设置环境变量
    echo "/opt/opencv-3.0.0/lib" > /etc/ld.so.conf.d/opencv-3.0.0.conf
    ldconfig
    gedit /etc/profile    在最后一行加入:export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/opencv-3.0.0/lib/pkgconfig/
    source /etc/profile
    
  6. 测试
    mkdir /test
    cd /test
    touch main.cpp Makefile
    make
    ./all
    

【main.cpp】内容如下

#include <opencv2/opencv.hpp>

using namespace cv;

int main()
{
	Mat img(Size(300, 300), CV_8U, Scalar(255, 0, 0));
	imshow("", img);
	waitKey(0);
	return 0;
}

【Makefile】内容如下:

SRC := $(wildcard *.cpp)
OBJ := $(patsubst %.cpp, %.o, $(SRC))

CC = gcc
CCLINK = g++
CFLAGS = -g -Wall
LIBS = $(shell pkg-config opencv --cflags --libs)

all: $(OBJ)
	$(CCLINK) $(CFLAGS) $^ $(LIBS) -o $@
	
$(OBJ): %.o:%.cpp
	$(CC) $(CFLAGS) -c $^ $(LIBS) -o $@
	
.PHONY:clean
clean:
	rm *.o all

ends…

猜你喜欢

转载自blog.csdn.net/qq153471503/article/details/83585126