# PC:Ubuntu18.04
# GCC: arm-linux-gnueabihf- 7.4.0
# 开发板:
# imx6ull+debian10(文件系统为野火提供的)

# 此处需要编译的是带gstreamer的qt 静态库,仅着重说明安装gstreamer的库,忽略其他工具的安装
# 参考:太多,忘了大部分
https://wiki.qt.io/RaspberryPi2EGLFS

#期间PC端安装了同样的库,但好像没什么用
# 开发板安装gstreamer相关库,还安装了其他库(试错太多,忘了)
apt-get install libgstreamer1.0-dev
# 本人安装了以下的库才解决问题: ERROR: Feature 'gstreamer_1_0' was enabled, but the pre-condition 'libs.gstreamer_1_0' failed.
apt-get install gstreamer1.0-omx libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
# 安装以上库即可编译qt
# 开发板安装一下库解决运行报错:
# GStreamer-CRITICAL: gst_element_get_static_pad: assertion 'GST_IS_ELEMENT (element)' failed
apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools

# 建立开发板的文件系统
# 建立文件夹
# 参考: https://wiki.qt.io/RaspberryPi2EGLFS
# 8.[on host PC] Create a sysroot. Using rsync we can properly keep things synchronized in the future as well. Replace raspberrypi.local with the address of the Pi

mkdir sysroot sysroot/usr sysroot/opt
rsync -avz pi@raspberrypi.local:/lib sysroot
rsync -avz pi@raspberrypi.local:/usr/include sysroot/usr
rsync -avz pi@raspberrypi.local:/usr/lib sysroot/usr

# 配置qt,直接解压源码,不需要对源码进行任何更改,qt版本相差不大应该都可以
./configure -static -prefix /opt/imx6/qt-5.9.8-static -extprefix /opt/imx6/qt-5.9.8-static \
-device linux-imx7-g++ \
-device-option CROSS_COMPILE=arm-linux-gnueabihf- \
-sysroot /../../../../../../home/greg/imx6/debian10sysroots \
-no-openssl -no-cups -no-iconv -qt-zlib \
-no-opengl -no-sse2 -no-xcb \
-nomake examples -nomake tests -v -opensource \
-skip qt3d -skip qtcanvas3d -skip webengine -skip qtpurchasing \
-skip qtquickcontrols -skip qtquickcontrols2 -skip qtsensors -skip qtdoc -skip qtwayland \
-confirm-license -qreal double -gstreamer 1.0
# -static 设置静态编译,默认动态
# 其他配置可根据实际需要增删
# 以上文件系统也许可以用库连接代替,未测试
# -sysroot 为目标使用的根文件系统,可从开发板直接获取相关库,这里的文件系统直接从SD卡里复制整个文件
# 注意:此处文件系统必须保证存在,否则无法编译qt程序(需要用的里面的动态库)

# 配置成功
make -j8
# 慢的电脑要20~30分钟,快的10~20分钟,再快的不到10分钟

make install

#运行时,开发板需要在qt安装目录中的lib建立fonts,存放字体文件
mkdir -p /opt/imx6/qt-5.9.8-static/lib/fonts/
cp 字体文件 /opt/imx6/qt-5.9.8-static/lib/fonts/

imx6ull+debian10 构建静态qt交叉编译环境的更多相关文章

  1. PC机安装Qt以及QT交叉编译环境 分类: OpenCV ZedBoard shell ubuntu Eye_Detection 2014-11-08 18:57 246人阅读 评论(0) 收藏

    PC: apt-get install qtcreator Qt Embedded for ZedBoard: 下载qt-everywhere-opensource-src-4.7.3.tar.gz, ...

  2. iMX6 yocto平台QT交叉编译环境搭建

    转:https://blog.csdn.net/morixinguan/article/details/79351909 . /opt/fsl-imx-fb/4.9.11-1.0.0/environm ...

  3. TI PDK3.0 qt 交叉编译环境设置

    上午剑锋给的方法,成功在qtcreator上面加入TI官方的qmake以及他的交叉编译器. 1. 步骤如下: 1. 我假设TI PDK3.0 安装目录为顶层目录. 2. 进入linux-devkit ...

  4. QtCreator设置野火iMx6开发板提供的qt交叉编译套件

    在Ubuntu18 QtCreator上添加野火iMx6开发板的Qt交叉编译环境PC:Ubuntu18.04QtCreator: 4.8.2交叉编译环境:野火提供的 5-编译工具链->qt交叉编 ...

  5. 交叉编译环境以及开发板上-/bin/sh: ./hello: not found(使用arm-linux-gcc -static -o 来进行静态编译)

    目标板是S3C2440.至于交叉编译环境的搭建就不多说了,网上很多教程. 搭建好了交叉编译环境后,第一件事就是传说中的”Hello,World!”. 一. 主机编译环节 我使用的系统是ubuntu10 ...

  6. RaspberryPi交叉编译环境配置-Ubuntu & wiringPi & Qt

    1.配置RaspberryPi交叉编译环境: 在开发RaspberryPi Zero的过程中,由于Zero板卡的CPU的处理性能比较弱,因此其编译的性能比较弱,需要将代码在PC电脑上交叉编译完成之后再 ...

  7. ubuntu QT安装以及配置交叉编译环境

    我的环境:ubuntu14.04  64位 1.下载Qt: 上网搜索 qt-opensource-linux-x64-5.3.0.run下载有好多百度云盘 要么在官网下载追新版本http://down ...

  8. NeuSoft(1)构建嵌入式交叉编译环境

    操作系统版本:ubuntu 12.04 内核名称:Linux 内核发行版:3.2.0-generic 内核版本:#50-Ubuntu SMP Mon Sep 12 21:18:14 UTC 2011 ...

  9. Ubuntu18.04 LTS x64 构建ARM交叉编译环境(尝试,但失败了!!!估计是编译器没选对)

    [测试而已,由于需要了解编译器和处理器体系,因此先放弃该方法] 动机 入门嵌入式开发,又需要 Windows 又需要 Linux,但资料给的竟然是 Ubuntu9,导致我不能使用 VSCode Rem ...

随机推荐

  1. laravel 操作多数据库总结

    laravel 操作多数据库总结 读写分离 env配置 DB_CONNECTION=mysql DB_HOST=xxxxxx DB_PORT=xxx DB_DATABASE=xx DB_USERNAM ...

  2. Fibonacci Nim(斐波那契尼姆)游戏

    游戏描述: Fibonacci Nim是Nim游戏的变种,其规则为两名玩家从一堆硬币中交替移除硬币,第一步中,不允许玩家拿走所有硬币,也不允许不取,并且在每次后续移动中,移除的硬币数量最多可以是上一次 ...

  3. Web自动化测试项目(三)用例的组织与运行

    一.Unittest用例组织 在test_case目录下创建test*.py,组织测试用例 ├── test_case │   ├── __init__.py │   └── test_login.p ...

  4. TensorFlow 编程基础

    1.TensorFlow 安装:https://www.cnblogs.com/pam-sh/p/12239387.html https://www.cnblogs.com/pam-sh/p/1224 ...

  5. 深入JVM类加载器机制,值得你收藏

    先来一道题,试试水平 public static void main(String[] args) { ClassLoader c1 = ClassloaderStudy.class.getClass ...

  6. vue中如何在本地导入js文件

    import {setStore,setUser,getStore,removeStore} from "../../../public/localstory" 在导入js文件时, ...

  7. java代码之美(14)---Java8 函数式接口

    Java8 函数式接口 之前写了有关JDK8的Lambda表达式:java代码之美(1)---Java8 Lambda 函数式接口可以理解就是为Lambda服务的,它们组合在一起可以让你的代码看去更加 ...

  8. SpringBoot学习(1) - 日志

    package com.study.spring_boot_log; import org.springframework.boot.SpringApplication; import org.spr ...

  9. how to convert wstring to string

    #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> #include <local ...

  10. Java使用反射实现根据字符串类名及参数创建对象

    要根据字符串创建对象,可以使用 Class.forName(String) 方法: 而要新建一个可以指定初始值参数的对象,就必须得使用 getConstructor(Class<T>... ...