linux qt交叉编译opencv,ubuntu 环境 cross compile 交叉编译 ARM Qt 集成 opencv

Qt 的版本众多,交叉编译Qt可以下载 最新的 Qt 5.11,在 qtbase/mkspecs/devices/ 下找到你对应开发板的配置文件,

拷贝出来, 选择一版适用当前交叉编译工具链的版本,这里以  5.8.0版本的Qt 作为demo。

下载源码,qt-everywhere-opensource-src-5.8.0    下载地址    http://download.qt.io/archive/qt/

解压后 ,找到Qt 5.11.1中跟目标开发板最匹配的配置文件 ,我的是 qt-everywhere-opensource-src-5.8.0/qtbase/mkspecs/devices/linux-rcar-m3-g++   拷贝整个linux-rcar-m3-g++目录

到  Qt 5.8.0 对应的 devices/目录下,

source XXXXX交叉工具编译链

写一个 配置脚本build.sh  chmod 修改执行权限 。

#!/bin/bash

export ROOTFS=/apt/poky/2.1.2/sysroots/aarch64-poky-linux

./configure \

-opensource \

-confirm-license \

-v \

-skip qt3d \

-skip webchannel \

-skip location \

-prefix /home/Qt580/ \

-device linux-rcar-m3-g++ \

-device-option CROSS_COMPILE=/apt/poky/2.1.2/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux- \

-sysroot $ROOTFS \

-opengl es2 \

对于报错的模块可以选在skip 掉 。

执行build.sh 脚本 后,生成Makefile

make    长达一个多小时

make install  安装在 ROOTFS 的 /home/QT580中

配置交叉编译环境。

工具栏   ----〉 Options   ----〉

左边栏 Build & Run  ,  配置   Compliers    -〉 Manual Add  -〉 GCC -〉 C/C++  全配置成/apt/poky/2.1.2/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++

配置Qt Versions   -〉 Manual       Add     配置   /apt/poky/2.1.2/sysroots/aarch64-poky-linux/home/Qt580/bin/qmake

配置  Kits   Compiles  选 配置的Manual GCC  ,Qt Version 选择 Menual Version

Apply

新建一个工程

Kit Selection  选择刚才配置 的KIt  名字    。

在 demo.pro 配置文件中 添加Opencv  库文件。(交叉编译好了)

INCLUDEPATH += /apt/poky/2.1.2/sysroots/aarch64-poky-linux/usr/include \

/apt/poky/2.1.2/sysroots/aarch64-poky-linux/usr/include/opencv \

/apt/poky/2.1.2/sysroots/aarch64-poky-linux/usr/include/opencv2

LIBS += \

/apt/poky/2.1.2/sysroots/aarch64-poky-linux/usr/lib/libopencv_*

编写代码

#include "mainwindow.h"

#include

#include

#include

using namespace std;

using namespace cv;

int main()

{

Mat frame0,frame1,frame2,frame3;

//frame=imread("/media/logo.bmp");

VideoCapture cap0(0);

VideoCapture cap1(1);

VideoCapture cap2(2);

VideoCapture cap3(3);

if(!cap0.isOpened())return 1;

if(!cap1.isOpened())return 1;

if(!cap2.isOpened())return 1;

if(!cap3.isOpened())return 1;

while(1){

if(!cap0.read(frame0))return 1;

if(!cap1.read(frame1))return 1;

if(!cap2.read(frame2))return 1;

if(!cap3.read(frame3))return 1;

resize(frame0,frame0,Size(640,480));

imshow("test0",frame0);

moveWindow("test0", 0, 0);

resize(frame1,frame1,Size(640,480));

imshow("test1",frame1);

moveWindow("test1",640,0);

resize(frame2,frame2,Size(640,480));

imshow("test2",frame2);

moveWindow("test2",0,480);

resize(frame3,frame3,Size(640,480));

imshow("test3",frame3);

moveWindow("test3",640,480);

waitKey(30);

}

//cout << "Hello world\n"<

// return 0;

// QApplication a(argc, argv);

// MainWindow w;

//w.show();

// return a.exec();

return 0;

}

配置 ,开发板环境变量  /etc/enviroment   添加  QT_QPA_PLATFORM=linuxfb  ( 还可以指明 那个fb 等等 )或者  程序后  加上  -platform=linuxfb  或者其他显示系统 wayland  X11 等等。

把交叉编译Qt的 产物 /plugins/platforms/  拷贝到程序执行目录下 。解决

failed to start because it could not find or load the Qt platform plugin "linuxfb"

in "".

完美执行。

linux cross toolsChain 交叉编译 ARM(转)

转载请注明出处:http://blog.csdn.net/mybelief321/article/details/9076583 安装环境 Linux版本:Ubuntu 12.04    内核版本:L ...

aarch64 cross compile 交叉编译 opencv

需求 : linux host :  UBUNTU opencv source : opencv 3.3.1.zip CMAKE  :  apt-get install cmake cmake-qt- ...

cross compile 交叉编译 ffmpeg

ffmpeg 支持各种压缩格式的视频解码库,经常出现在各种播放器中,交叉编译也是一项麻烦的事情. 1. 下载ffmpeg 源码包   http://ffmpeg.org/releases/ffmpeg ...

Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程

Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程Linux版本:Ubuntu 12.04 内核版本:Linux 3.5.0 交叉编译器版本:arm-linux-gcc-4. ...

Ubuntu系统下arm-linux-gcc交叉编译环境搭建过程

搭建所需环境Linux版本:Ubuntu 14.10 交叉编译器版本:arm-linux-gcc-4.4.3资源链接 何为交叉编译环境搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下 ...

解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)——ubuntu环境设置默认是utf-8,文件编码可使用Encodersoft批量转换

一.Qt环境设置 文件从window上传到Ubuntu后会显示乱码,原因是因为ubuntu环境设置默认是utf-8,Windows默认都是GBK.Windows环境下,Qt Creator,菜单-&g ...

手把手教你安装QT集成开发环境(操作系统为ubuntu10.04)

在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...

ubuntu 环境下的QT程序打包

很多的时候 需要将自己写的QT 程序发布一下  所以今天教一下 怎么在ubuntu 环境下将自己的写的Qt 程序打包打包是为了不依赖 开发环境 和开发的库. 1. QtCreate使用Release版 ...

手把手教你安装QT集成开发环境(操作系统为ubuntu10.04,需要先安装build-essential和libncurses5-dev)

在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...

随机推荐

centos 安装ffmpeg

wget http://www.ffmpeg.org/releases/ffmpeg-3.1.tar.gz tar -zxvf ffmpeg-3.1.tar.gz cd ffmpeg-3.1 ./co ...

ajax 请求多张图片数据

需求分析: 实现对网页上的图片进行显示.由于读取图片名称相同,而图片内容已发生改变.采用网上所用的要求浏览器不缓存的操作不生效

你可能感兴趣的:(linux,qt交叉编译opencv)