Ubuntu20.04下OpenCV 4.5环境配置与代码g++、Cmake编译方法

目录

  • 1.OpenCV环境配置
    • 1.1 pkg-config环境
    • 1.2动态库环境配置
  • 2.代码编译方法
    • 2.1 g++编译
    • 2.2 Cmake编译

1.OpenCV环境配置

在Ubuntu中将OpenCV4.5编译并且安装好以后,还需要为其配置环境,类似于在Windows下配置环境变量,使得编译器能够找到对应的封装库函数等等。

1.1 pkg-config环境

第三方库的使用主要涉及头文件的路径设置,库的路径设置以及动态库的环境变量设置。第三方库都会提供一个*.pc 文件,pkg-config程序通过读取这个*.pc的文件,获取了库的头文件位置和库的路径等信息。为了使得编译器能够找到Opencv4.5中的opencv4.pc(该文件默认在usr/local/lib/pkgconfig下),需要将其所在的目录路径放入pkgconfig.sh文件中:

sudo vim /etc/profile.d/pkgconfig.sh
#文件最后加入
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

Ubuntu20.04下OpenCV 4.5环境配置与代码g++、Cmake编译方法_第1张图片
修改后保存退出,重新激活设置:

source /etc/profile

#测试是否成功的命令:
pkg-config --libs opencv4

1.2动态库环境配置

sudo vim /etc/ld.so.conf.d/opencv4.conf
#在配置文件最后加上opencv库的路径,默认为/usr/local/lib

Ubuntu20.04下OpenCV 4.5环境配置与代码g++、Cmake编译方法_第2张图片

#重新启用配置
sudo ldconfig

2.代码编译方法

2.1 g++编译

g++编译命令:

#其中“main.cpp”是要编译的c++代码,“-o opencv” 表示编译输出的文件名为“opencv”,这些可以按照自己的需求进行修改
g++ `pkg-config opencv4 --cflags` main.cpp  -o opencv `pkg-config opencv4 --libs`

2.2 Cmake编译

  1. 创建CMakeLists.txt,输入:
# cmake needs this line
cmake_minimum_required(VERSION 3.1)

# Define project name
project(ProjectName)

# Find OpenCV, you may need to set OpenCV_DIR variable
# to the absolute path to the directory containing OpenCVConfig.cmake file
# via the command line or GUI
find_package(OpenCV REQUIRED)

# Enable C++11
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED TRUE)

# Declare the executable target built from your sources
add_executable(ProjectName main.cpp)

# Link your application with OpenCV libraries
target_link_libraries(ProjectName PRIVATE ${OpenCV_LIBS})

其中,部分内容需要自适应的修改,“ProjectName”换成你的工程文件夹名称,“main.cpp”为要编译的cpp文件。

  1. 依次运行:
cmake .
make
./ProjectName

你可能感兴趣的:(c++/c,opencv,c++,ubuntu)