Qt for Linux:树莓派3配置Qt开发环境(Qt 5.9.1 和 OpenCV 2.4.13)

关于树莓派

我用的是 树莓派树莓派3代B型 Raspberry Pi Model 3 B

我拿来是做监控视频采集的,所以会用到 Qt 和 OpenCV

开发上,除了视频采集和视频文件生成用的OpenCV,其他全部Qt

本篇文章只涉及树莓派的配置,不涉及具体的开发

配置树莓派系统

  • 下载系统镜像(下列方法3选1去下载即可)

    • 官网地址

    https://ubuntu-mate.org/download/

    • 磁力链接

    magnet:?xt=urn:btih:d0f23c109d8662a3fe9338f75839af8d57e5d4a9&dn=ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz

    • 种子

    https://ubuntu-mate.org/raspberry-pi/ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz.torrent

  • 烧写镜像到TF卡

    不同系统方法不一样,我这里是macOS的流程,Linux上流程类似,Windows下需要依赖工具进行烧写。我的TF卡是16GB的。用了TF卡转USB的转接器连接到了电脑上。

    • 解压xz文件,得到img文件

      我用的是 RAR Extractor Star,是AppStore里面下载的

    这里写图片描述

    • 烧写镜像

      注意我这里用的目标设备是 /dev/rdisk2 ,这对应我电脑上插入的TF卡,这个每台电脑可能不一样,操作前请务必在磁盘工具里查看确认。

      sudo dd bs=1m if=/Users/Jason/Desktop/ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz/ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img of=/dev/rdisk2

    这里写图片描述

  • 确认烧写

    打开磁盘工具,查看TF卡,查看是否已经有了PI_BOOT分区,有的话说明烧写正常。

    这里写图片描述

  • 启动树莓派

    把烧写号的TF卡插入树莓派,给树莓派接上HDMI和键鼠后,接上电源启动。

  • 安装Ubuntu-Mate

    这一步没什么好说的,把TF卡插入到树莓派后启动,都是界面话操作,下一步下一步就行。

  • 配置ssh

    • sudo apt-get update

    • sudo apt-get install openssh-server

  • 设置ssh开机启动

    vim /etc/rc.local

    在 exit 0 前加入:

    /etc/init.d/ssh start

    然后就可以拔掉键鼠和HDMI,远程ssh控制了。

  • 环境配置

    • sudo apt-get install vim

    • sudo apt-get -y install build-essential cmake cmake-curses-gui pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff5-dev libtiff-tools libeigen3-dev

    • sudo apt-get -y install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavformat-dev libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine2-dev libunicap2 libunicap2-dev swig libv4l-0 libv4l-dev python-numpy python-dev libgtk2.0-dev

    • sudo apt-get -y install gstreamer1.0*

    • sudo apt install libgstreamer-plugins-base1.0-dev

    • sudo apt install cmake-curses-gui

    • sudo apt-get install libssl-dev

配置Qt

  • 下载Qt

    • 官网

      https://www.qt.io/download-open-source/#section-3

    • 链接

      http://download.qt.io/official_releases/qt/5.9/5.9.1/single/qt-everywhere-opensource-src-5.9.1.tar.xz

  • 拷贝xz压缩包到树莓派

  • 解压

    xz -d ./qt-everywhere-opensource-src-5.9.1.tar.xz

    tar -xvf ./qt-everywhere-opensource-src-5.9.1.tar

  • 切换路径

    cd qt-everywhere-opensource-src-5.9.1

  • 配置

    ./configure -openssl-linked -no-opengl -nomake examples -nomake tests -skip qtdatavis3d -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtlocation -skip qtpurchasing -skip qtquickcontrols -skip qtquickcontrols2 -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebview

    分别输入 cyes

  • 编译

    make -j3

    在我的树莓派上,大约编译了4个小时

  • 安装

    sudo make install

  • 修改环境配置

    vim ~/.profile

    加上这两行,并退出vim

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/Qt-5.9.1/bin/
    PATH="/usr/local/Qt-5.9.1/bin:$HOME/bin:$HOME/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
  • 使用source,让配置生效

    source ~/.profile

  • 确认Qt版本

    “`qmake -v““

    在我的树莓派上,运行该命令后输出:

    QMake version 3.1
    Using Qt version 5.9.1 in /usr/local/Qt-5.9.1/lib

    至此,Qt已经配置好了,要编译Qt的工程,就是qmake然后make就行了。

配置OpenCV

  • 下载OpenCV 2.4.13

    • 官网:http://opencv.org/releases.html

    • 链接:https://github.com/opencv/opencv/archive/2.4.13.zip

  • 拷贝zip压缩包到树莓派

  • 解压

    unzip ./2.4.13.zip

  • 切换路径

    cd ./opencv-2.4.13

  • 新建release文件夹

    mkdir release; cd release

  • 准备编译

    ccmake ../

    输入 c 开始配置,然后等一会

    输入 e 退出帮助

    根据提示进行配置,对于主要模块,我的配置如下:

    BUILD_opencv_apps               *OFF                                                                          
    BUILD_opencv_calib3d            *OFF                                                                          
    BUILD_opencv_contrib            *OFF                                                                          
    BUILD_opencv_core               *ON                                                                           
    BUILD_opencv_features2d         *OFF                                                                          
    BUILD_opencv_flann              *OFF                                                                          
    BUILD_opencv_gpu                *ON                                                                           
    BUILD_opencv_highgui            *ON                                                                           
    BUILD_opencv_imgproc            *ON                                                                           
    BUILD_opencv_legacy             *OFF                                                                          
    BUILD_opencv_ml                 *OFF                                                                          
    BUILD_opencv_nonfree            *OFF                                                                          
    BUILD_opencv_objdetect          *OFF                                                                          
    BUILD_opencv_ocl                *OFF                                                                          
    BUILD_opencv_photo              *ON 
    BUILD_opencv_python             *OFF                                                                          
    BUILD_opencv_stitching          *OFF                                                                          
    BUILD_opencv_superres           *OFF                                                                          
    BUILD_opencv_ts                 *OFF                                                                          
    BUILD_opencv_video              *ON                                                                           
    BUILD_opencv_videostab          *OFF                                                                          
    BUILD_opencv_world              *OFF

    输入 c 继续配置,然后等一会

    输入 e 退出帮助

    输入 g 生成并且退出

  • 编译

    make

  • 安装

    sudo make install

猜你喜欢

转载自blog.csdn.net/wsj18808050/article/details/74340357