当前位置: 首页 > news >正文

Centos7 交叉编译QT5.9.9源码 AArch64架构

环境准备

centos7 镜像
下载地址:http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/

在这里插入图片描述

aarch64交叉编译链
下载地址:https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-linux-gnu/

在这里插入图片描述

QT5.9.9源代码
下载地址:https://download.qt.io/new_archive/qt/5.9/5.9.9/single/
找源码找了半个小时🤮
在这里插入图片描述

编译前准备

安装工具包

yum install -y gcc gcc-c++
yum -y install centos-release-sclyum -y install devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-binutilsyum install devtoolset-7-libcilkrts-develscl enable devtoolset-7 bash
yum install -y fontconfig freetype freetype-devel mesa-libGL-devel mesa-libGLU-devel freeglut-devel libXext-devel libXfixes-devel libXi-devel libXrender-devel libxcb-devel libX11-devel libxkbcommon-x11-devel gstreamer* libgstreamer* zlib zlib-devel
yum install bison build-essential gperf flex ruby python libasound2-dev libbz2-dev libcap-dev libcups2-dev libdrm-dev libegl1-mesa-dev libgcrypt11-dev libnss3-dev libpci-dev libpulse-dev libudev-dev libxtst-dev gyp ninja-build libglu1-mesa-dev libfontconfig1-dev libx11-xcb-dev libicu-dev

配置交叉编译工具链
直接解压即可

在这里插入图片描述

配置环境变量,在/etc/profile最下面加入如下一段,其中路径根据自己的实际路径填写
export PATH=$PATH:/home/zhangdy/source_code/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin
验证时,输入aarch,然后多按几次tab键,出现提示表示配置成功

在这里插入图片描述
在这里插入图片描述

编译QT5.9.9源码

解压源码之后,进入目录,输入如下命令,用于生成Makefile,如果想要静态编译,将-shared换成-static

./configure -verbose -opensource -release -shared -confirm-license -make libs -nomake tests -nomake examples -skip qtmacextras -skip qtandroidextras -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -no-opengl -xplatform linux-aarch64-gnu-g++ -prefix /opt/qt5.9.9-aarch64

在这里插入图片描述

输入以下命令正式开始编译

make -j8

在这里插入图片描述

最后执行如下命令,qt就会安装到/opt/qt5.9.9-aarch64,之前指定的目录

make install

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

补充

关于交叉编译工具链起作用的环节

-xplatform linux-aarch64-gnu-g++

在这里插入图片描述
在这里插入图片描述

关于配置环境变量要注意的事项

export PATH=$PATH:/home/zhangdy/source_code/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin

$PATH: 一定要写,不然会出现系统命令失效的问题

http://www.lryc.cn/news/139521.html

相关文章:

  • 爬虫逆向实战(二十)--某99网站登录
  • 【C# 基础精讲】LINQ to Objects查询
  • 【力扣】209. 长度最小的子数组 <滑动窗口>
  • 帮助中心应该用什么工具做?
  • 前端面试:【跨域与安全】跨域问题及解决方案
  • 【SQL中DDL DML DQL DCL所包含的命令】
  • LeetCode150道面试经典题-- 二叉树的最大深度(简单)
  • 【C++11】future和async等
  • Linux 系统下 GDB 调试器的使用
  • 个人首次使用UniAPP使用注意事项以及踩坑
  • VSCode 如何解决 scanf 的输入问题——Code is already running!
  • 短视频seo源码矩阵系统开源---代码php分享
  • 【docker】中文无法显示输入等问题解决方法
  • leetcode 1035. 不相交的线
  • Hystrix: 服务降级
  • 高精度运算(加减乘除乘法)
  • Mysql数据库技术知识整理
  • SpringBoot整合Mybatis 简单试用
  • SpringBoot案例-配置文件-yml配置文件
  • Web Components
  • IT运维软件的费用是多少?
  • 基于Three.js的WebXR渲染入门
  • resource doesn‘t have a corresponding Go package.
  • 【微服务】微服务调用原理及服务治理
  • 【在Windows下搭建Tomcat HTTP服务】
  • 前端Vue3框架知识点大全
  • C语言练习2(巩固提升)
  • Vulnhub: DriftingBlues: 1靶机
  • Android项目如何上传Gitee仓库
  • MySQL——基础——联合查询