Linux Centos系统OpenCV安装方法

article/2025/1/18 3:28:18
为了熟悉一下linux下C++,准备通过将以前所写项目由windows移植到linux下,首先配置环境,这个还挺繁琐,出错挺多的,现在记录一下。 
系统:Centos 6.5 
最后版本 OpenCV: 2.4.3 
1、安装依赖包(很重要)  
yum install cmake gcc gcc-c++ gtk+-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 
如果不安装上述依赖包,到最后调用opencv时会出错,如下: 
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow,...................  
此时只能将编译好的opencv删除再重新编译,即将/usr/local/lib和/usr/local/include/中的有关的删除 
mv /usr/local/lib/libopencv* 
mv -fr /usr/local/include/opencv  
mv -fr /usr/local/include/opencv2  
然后再重新编译opencv. 
2、安装/更新CMake  
为什么要安装或者更新cmake呢,下面说明所chǔ问题: 
(1)下载 
   在OpenCV官网 http://sourceforge.net/projects/opencvlibrary/files/  下载所需版本 
   拷贝到/usr/local/路径之下  
(2) tar -xvf OpenCV-2.4.8.tar.bz2   解压  
(3)cd  OpenCV-2.4.8  进入目录  
(4)yum install cmake      直接从网上安装cmake

(5) cmake CMakeLists.txt   
如果你此步没有出错opencv就已经安装了; 
此步出错 
需要安装新版的cmake 
下载最新版本cmake文件进行编译 
http://www.cmake.org/cmake/resources/software.html

将其复制到/usr/local/路径下 
解压: 
r -zxv -f cmake-2.8.10.2.tar.gz       // 解压压缩包 
rm -rf cmake-2.8.10.2.tar.gz   // 删除压缩包

cd cmake-2.8.10.2

./configure

make

make install 
// 修改文件夹名

mv cmake-2.8.10.2 cmake  

修改环境变量: 
vim /etc/profile 
在尾部添加: 

PATH=/usr/local/cmake/bin:$PATH
export PATH
这里注意,不要讲冒号写成分号,要不然各种命令行都不能用,重启后进入不了系统等。 
//使修改生效

source /etc/profile   
//查看PATH值有没有添加刚刚的路径  

echo $PATH   

//检验版本 
cmake --version

安装成功了cmake再继续安装opencv 
3、安装Opencv 
继续上一步的cmake CMakeLists.txt   
出错: 

System is unknown to cmake, create: 
opencv 版本不对 
重新下载Opencv,这次选择了下载opencv-2.4.3,放于/usr/local/目录下 
重复上一步中安装opencv步骤 
tar -xvf OpenCV-2.4.3.tar.bz2 解压 
cd  OpenCV-2.4.3. 进入目录 
yum install cmake      直接从网上安装cmake

cmake CMakeLists.txt   
make  
make install
成功 
4、添加路径 
如果不添加路径到环境变量当运行测试程序时会出错如下: 
./drawing: error while loading shared libraries: libopencv_calib3d.so.2.4: cannot open shared object file: No such file or directory

解决方法: 
(1)用ln将需要的so文件链接到/usr/lib或者/lib这两个默认的目录下边 
ln -s /where/you/install/lib/*.so /usr/lib

sudo ldconfig

(2)修改LD_LIBRARY_PATH 
export LD_LIBRARY_PATH=/where/you/install/lib:$LD_LIBRARY_PATH

sudo ldconfig

(3)修改/etc/ld.so.conf  (我采用了此种方法) 
vim /etc/ld.so.conf 
add /where/you/install/lib

sudo ldconfig

输入ldconfig时出错:libstdc++.so.6.0.18-gdb.py不是ELF文件-它起始的魔数错误。 
解决方法,这里直接暴力删除了,rm libstdc++.so.6.0.18-gdb.py 
再重新ldconfig,没有错 
5、测试: 
测试代码显示一张图片: 

  1 #include "cv.h"2 #include "highgui.h"3 4 int main()5 {6          IplImage* pImg = NULL;7 8           if((pImg = cvLoadImage("1.jpg",1)))9           {10                   cvNamedWindow( "Image", 1 );//创建窗口11                   cvShowImage( "Image", pImg );//显示图像12                   cvWaitKey(0); //等待按键13                   cvDestroyWindow( "Image");//销毁窗口14                   cvReleaseImage( &pImg ); //释放图像15                   return 0;16           }17            return -1;18 }

可以用下面的命令编译
g++ `pkg-config --cflags --libs opencv` code.cpp -o drawing 
注意上面是~键的符号而不是引号要不然会出错:--libs opencv:没有那个文件或目录   fatal error: cv.h:没有那个文件或目录 
此chǔ我采用写makefile方式:
编写makefile 如下: 



make 
./drawing 
显示成功 
如果出现第一步里面提到的错误,那就装完依赖库重新来编译一遍opencv. 

http://chatgpt.dhexx.cn/article/WGpAHOay.shtml

相关文章

OpenCV下载和安装(包含所有平台)!

在 OpenCV 官方网站可以下载最新的且完整的源码以及大部分的 release 版本源码。 安装 现在,OpenCV 使用 Git 作为版本管理工具,使用 Cmake 来构建工程。 在早些时候,OpenCV 开发者使用 Subversion 作为版本管理工具以及 automake 来构建工…

linux下载opencv

首先和自己在github下载的opencv-4.7和opencv_contrib-4.7.0同级建一个build文件sudo apt install cmake libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-devsudo apt install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libti…

Centos 7 Opencv安装使用

安装 安装步骤 opencv安装参考opencv安装版本问题:opencv3.16/17编译一直报错,后续编译4.5成功依赖问题:如果依赖安装完,opencv make时仍然发现不了GTK2.0/3.0, 或者libpng等,可以查看这些包实际的pkg-config 的配置文…

OpenCV的下载、安装和配置

第一步:下载和安装OpenCV SDK: 不同版本之间只有第五步--链接库的配置不同,把对应的版本号(如OpenCV4.6.0的460改成自己对应的版本号就可以了)。 首先进入官网Home - OpenCV,界面如图1.1 图 1.1 点击Lib…

Linux服务器上如何安装OpenCV的库?

Linux上安装OpenCV其实挺简单的。对于Python来说,可以直接使用pip进行安装,如: pip3 install opencv-python 当然,如果你是想在C或者Java内作为外部包使用,你可以考虑编译安装。 安装依赖 首先是依赖安装问题&#…

超详细的CentOS7.4下载与图文安装

一、CentOS7.4下载 官网下载页面地址:Index of / 如果觉得下载比较繁琐,我已经提供了CentOS7.4的安装包: 链接:https://pan.baidu.com/s/1cRgNfZ5REf4LQMIyl5K3hQ 提取码:lp6q 1、进入CentOS下载官网,找到Cent…

Centos7 下安装OpenCV 3.4.6

Centos7 下安装OpenCV 3.4.6 1. 参考资料2. 下载和安装必须的包2.1 安装cmake2.2 安装build-essential2.3 gtk2.0安装2.4 pkg-config 安装2.5 ffmpeg组件安装2.6 安装opencv其他依赖项 3. 下载和安装opencv3.1 下载源码并编译安装3.2 opencv配置与加载动态库 4. OpenCV测试 1. …

centos7安装和编译opencv4.5.0

目录 一、centos7的安装 二、gcc的安装 三、cmake的安装 四、Opencv4.5.0的安装 五、使用Opencv编写C图像处理程序 六、部署 一、centos7的安装 建议使用最小安装方法,安装出来的操作系统比较干净,参考教程 https://blog.csdn.net/u010476739/art…

个人使用:Windows下 OpenCV 的下载安装(2021.12.4详细)

一、下载OpenCV   到OpenCV官网Release(发布)板块下载OpenCV-4.5.4 Windows。 下载后是这样的 然后双击他,解压,就是大佬们说的安装,实质就是解压一下,解压完出来一个文件夹,其他什么也没发生。你把这个文件夹放在哪…

彻底删除aws亚马逊服务器使之不再计费

彻底删除aws亚马逊服务器使之不再计费 打开你的aws中的esc 选中之后,选择 stop, 之后,再 terminate 然后点击左侧的volume那查看实例, 如果有 先detach volume, 分离实例和卷。 然后在Action上选择delete volume 彻底删除卷。 删除卷之后,ter…

WinSCP 连接 AWS 服务器

WinSCP 连接 AWS 服务器 前言步骤 前言 基于目前官网上似乎没有 WinSCP 连接教程,所以这里简单记录一下希望对喜欢 WinSCP 的小伙伴有帮助 步骤 点击“高级” “验证”中选择自己的私钥文件(.pem), WinSCP 会自己根据这个私钥文件生成.ppk…

【aws】专有网络配置

前言 aws服务器相对于其它公有云来说,相对比较稳定,本文记录一次aws的专有网络的设置方法,望大家指点。 二、配置 1、配置VPC 2、配置子网,根据需求要配置两个子网,一个是配置弹性ip上网,一个是nat上网。 …

centos云服务器亚马逊,亚马逊云服务器AWS安装CentOS

亚马逊云服务器默认创建的实例,在停止之后再启动的情况下,IP会发生改变。所以我们最好先创建一个弹性IP,即EIP,不过我也不清楚这个费用。 1、按如图操作创建一个弹性IP,弹性IP创建之后可以随便绑定到该region下的实例 …

AWS白皮书 – 安全性

本文讲解AWS良好架构框架(AWS Well-Architected Framework)里其中五大支柱之一:安全性(Security) 设计原则 在所有层面考虑安全性:除了要在传统的防火墙上考虑安全性之外,我们还需要在每个、安…

aws云服务器怎么使用_使用AWS的无服务器URL缩短器

aws云服务器怎么使用 Are you sick of sending long cumbersome URL via mails or chats which looks messy. URL shortener is a great way of managing such long URLs and whats more amazing about it that you can make it in-house with a Serverless approach which low…

开发者在国内如何白嫖AWS服务器一年时间,怎样通过SSH工具连接AWS?免费的服务器有什么样的限制?

只要服务器一年快结束时,注销账号再重新注册就能再次使用一年,周而复始,无限白嫖 需要:国内信用可,未注册过AWS的邮箱 每月有多少流量? 答:100GB,AWS 客户每月可将 100GB 的数据免…

AWS云服务器重置,在AWS上重置/更改IAM用户密码的方法

我的IAM用户密码已过期,我无法访问AWS管理控制台进行重置,我可以在AWS上更改/重置IAM用户密码的唯一方法是使用AWS CLI,update-login-profile命令使IAM用户可以通过调用ChangePassword来更改自己的密码。你需要安装和配置AWS CLI工具才能按本文的方法操作,参考在Linux系统上…

AWS学习(一)——AWS云技术基础

目录 一、AWS入门1.如何建立一个AWS应用2. 如何与AWS交互3.AWS账户与权限 二、AWS计算1.Amazon EC22.Amazon Container Service3.Serverless和 AWS Lambda(1)AWS Fargate(2)AWS Lambda 三、AWS网络1.网络基础2.Amazon VPC&#xf…

AWS云服务器CentOS7.5安装MYSQL

目录 1、创建root账号密码 2、切换至root账号 3、安装wget 4、获取mysql rpm软件包 5、安装mysql服务器 6、验证服务器安装状态 1、创建root账号密码 ssh client远程登陆到AWS云服务器,输入如下指令,创建root账号密码 1.1 ssh client远程登陆到A…

aws云服务器_将本地服务器转换为边缘云,如AWS Outpost

aws云服务器 While it is not possible to compete with a public cloud in terms of feature set, elasticity, scale, managed services, geographic reach and bursty workloads, there are cases where it makes sense to run part of the workloads in an on-premises env…