1 下载opencv
官网下载,将下载后的文件夹解压到主目录,重命名为opencv,在此文件夹中新建文件夹arm-build,arm-install(用于存放交叉编译后的opencv库)
2 cmake-gui配置
sudo cmake-gui
点击configure,如下图
点击next, 如下图,C,C++:交叉编译链
点击finish,开始配置,选择Advanced。在search栏中输入flags,并在勾选advanced,然后按下图进行配置。即将CMAKE_CXX_FLAGS和CMAKE_C_FLAGS的值设为-O3 -fPIC -W -Wall,将CAMKE_EXE_LINKER_FLAGS的值设为-lpthread -lrt -ldl。
在search框搜索zlib,在BUILD_ZLIB后打勾,并选择ZLIB_INCLUDE_DIR路径,为你的opencv源码路径中的3rdparty/zlib。
在search框搜索pkg,在OPENCV_GENERATE_PKGCONFIG后打勾,生成opencv.pc文件。
在search框搜索install,将CMAKE_INSTALL_PREFIX后路径换为arm-install路径。
配置完成后再次点击configure,完成后点击generate。
3 编译安装
make -j4
sudo make install
4 配置环境
4.1
sudo gedit /etc/bash.bashrc
添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/.编译后的opencv库路径./arm-install/lib/pkgconfig export PKG_CONFIG_PATH
重启激活
4.2
sudo gedit /etc/ld.so.conf.d/opencv.conf
添加
/.编译后的opencv库路径./arm-install/lib
sudo ldconfig
5 查询opencv库
pkg-config --cflags --libs opencv4
6 测试opencv
test.cpp
#include <opencv2/opencv.hpp>
using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( "test.jpg", 1 );
if( !image.data )
{
printf( "No image data \n" );
return -1;
}
cv::Point lu = cv::Point(180, 60);
cv::Point rd = cv::Point(400, 260);
cv::rectangle(image, lu, rd, cv::Scalar( 255, 20, 0 ), 1, cv::LINE_AA );
imwrite("test.jpg", image);
return 0;
}
7 交叉编译命令
aarch64-linux-gnu-g++ $(pkg-config --cflags --libs opencv4) test.cpp -o test
为了做好运维面试路上的助攻手,特整理了上百道 **【运维技术栈面试题集锦】** ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,**小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。**
![](https://img-blog.csdnimg.cn/img_convert/056c0b4529246401b1e52b2daf47f572.png)
本份面试集锦涵盖了
* **174 道运维工程师面试题**
* **128道k8s面试题**
* **108道shell脚本面试题**
* **200道Linux面试题**
* **51道docker面试题**
* **35道Jenkis面试题**
* **78道MongoDB面试题**
* **17道ansible面试题**
* **60道dubbo面试题**
* **53道kafka面试**
* **18道mysql面试题**
* **40道nginx面试题**
* **77道redis面试题**
* **28道zookeeper**
**总计 1000+ 道面试题, 内容 又全含金量又高**
* **174道运维工程师面试题**
> 1、什么是运维?
> 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
> 3、现在给你三百台服务器,你怎么对他们进行管理?
> 4、简述raid0 raid1raid5二种工作模式的工作原理及特点
> 5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
> 6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
> 7、Tomcat和Resin有什么区别,工作中你怎么选择?
> 8、什么是中间件?什么是jdk?
> 9、讲述一下Tomcat8005、8009、8080三个端口的含义?
> 10、什么叫CDN?
> 11、什么叫网站灰度发布?
> 12、简述DNS进行域名解析的过程?
> 13、RabbitMQ是什么东西?
> 14、讲一下Keepalived的工作原理?
> 15、讲述一下LVS三种模式的工作过程?
> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
> 17、如何重置mysql root密码?
详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK
> 11、什么叫网站灰度发布?
> 12、简述DNS进行域名解析的过程?
> 13、RabbitMQ是什么东西?
> 14、讲一下Keepalived的工作原理?
> 15、讲述一下LVS三种模式的工作过程?
> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
> 17、如何重置mysql root密码?
详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK