1.安裝依賴項
1、yum install cmake -y 2、yum install gcc gcc-c++ kernel-devel -y 3、yum install gcc-gfortran -y 安裝完后,可以用 gcc -v 、g++ -v 和 gfortran -v 查看版本。 4、yum install git -y 5、yum install libgnomeui-devel -y 6、yum install gtk2 gtk2-devel gtk2-devel-docs -y 7、yum install gnome-devel gnome-devel-docs -y 8、pkg-config --version (查看pkg版本,如果沒有安裝百度安裝) 9、ffmpeg組件安裝 (1)先安裝epel擴展源 yum -y install epel-release (2)安裝其他擴展源 yum localinstall –nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm -y yum localinstall –nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm -y rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm (3)最后安裝ffmpeg yum -y install ffmpeg ffmpeg-devel (4)測試ffmpeg有沒有安裝成功 輸入命令ffmpeg -version 10、安裝opencv 其他依賴項 yum install python-devel numpy -y yum install libdc1394-devel -y yum install libv4l-devel -y yum install gstreamer-plugins-base-devel -y
2. 安裝cmake-gui,好像必須是3.x以上,具體是多少不記得了,用最新版
cmake官網下載 linux 版的 cmake,我這里下載 cmake-3.19.3-Linux-x86_64.sh,執行腳本后,再執行:
cd cmake-3.19.3-Linux-x86_64
./cmake-gui
config 完成后搜索 world,勾選,然后 generate, 然后進入編譯目錄 make
3. make完成后找到lib目錄,將 libopencv_world.so.4.5.1 改名 libopencv_world.so.4.5,拷貝到C++項目下,編譯時引為動態鏈接庫,運行時拷貝到運行目錄。
測試代碼如下:
#include <iostream> using namespace std; #include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char *argv[]) { //讀取磁盤圖像文件 Mat image = imread("/root/01.tif"); //裁剪出一張新圖像 Mat partImage = image(Rect(0, 0, 500, 500)); //保存裁剪出的新圖像 imwrite("/root/01.left.top.png", partImage); cout << "over" << endl; return 0; }
發現以上代碼在一台新的Cent7.5機器上無法編譯通過,提示缺少組件。將1中的依賴項全部安裝后,可以正常編譯。具體是哪幾個,暫時無法精准定位,全裝最保險。