最近适配了麒麟V10SP1的Qt5.15.2,简化适配流程、总结步骤。

一、下载Qt5.15.2源码

wget https://download.qt.io/archive/qt/5.15/5.15.2/single/qt-everywhere-src-5.15.2.tar.xz
tar -xf qt-everywhere-src-5.15.2.tar.xz
注:最好将源码下载或解压到一个特定的位置、方便后期查找维护

二、安装依赖

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libxcb-xinerama0-dev
sudo apt-get install build-essential perl python git
sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
sudo apt-get install flex bison gperf libicu-dev libxslt-dev ruby
sudo apt-get install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libdbus-1-dev libfontconfig1-dev libcap-dev libxtst-dev libpulse-dev libudev-dev libpci-dev libnss3-dev libasound2-dev libxss-dev libegl1-mesa-dev gperf bison
sudo apt-get install libasound2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
sudo apt install libclang-6.0-dev llvm-6.0
sudo apt-get install clang-8
sudo apt-get install clang

每次执行完依赖安装命令以后需要检查是否安装成功、因为系统版本不同、导致各个源中的库文件名字可能不一样。
安装失败的时候需要去搜索是否有类似的安装包。一般命令就是 apt search +资源名(大概的就行)、根据查询结果
安装自己需要的。

三、安装ninja

(1)安装ninja依赖
sudo apt-get install re2c
(2)编译ninja
cd qt-everywhere-src-5.15.2/qtwebengine/src/3rdparty/ninja
./configure.py --bootstrap
(3)安装
sudo cp ./ninja /usr/bin
ninja --version

四、资源检查

进入到步骤一的源代码解压释放的目录下,执行编译检查命令
系统将罗列出编译Qt5.15.2所有的依赖资源是否存在,在这里我重点关注Qt的webengine相关的资源。yes代表相关资源存在、no表示缺失。并不是所有的no都是不可缺失的、却决于项目需要。
以资源:Proprietary Codecs … no为例,需要安装时的操作流程如下:
利用apt search 进行模糊搜索

根据查询出的结果进行apt-get install + 搜索结果名称
全部检查、安装必要库以后可以再次执行资源检查命令:

./configure -prefix /usr/local/Qt-5.15.2 -release -opensource -nomake examples -nomake tests -platform linux-clang -recheck-all

(注)该命令要在Qt源码路径下执行。

五、源码编译安装

进入到Qt源码路径下执行命令 make -j 8 整个编译过程大约需要半天左右。可以根据控制台输出的编译信息解决相关问题。
问题主要分以下几类:
1、编译生成的.o文件创建失败,这种情况一般是没有权限导致的。解决方法:将源码文件夹赋予777。chmod -R 777 +文件夹名称
2、编译过程中遇到资源依赖缺失、编译失败的。这种情况就是相应模块的链接资源不存在。可以根据错误提示寻找缺失资源库。apt search + 模糊名称 / apt-get install +搜索道得库。安装完成后再继续编译
3、遇到源码编译错误的。…/…/3rdparty/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h:1014:19: error: functional-style cast from ‘F’ (aka ‘V’) to ‘__fp16’ is not allowed
__fp16 fp16 = __fp16(f);
解决方法:
修改文件1014行
./src/3rdparty/chromium/third_party/skia/src/opts/SkRasterPipeline_opts.h
__fp16 fp16;
全部完成编译以后可以进入安装:make install
安装完成以后查看一下版本信息:make -v
配置qmake:qtchooser -install qt5.15.2 /usr/local/Qt-5.15.2/bin/qmake
配置环境变量:echo “export QT_SELECT=qt5.15.2” >> ~/.bashrc

麒麟V10SP1的国产化Qt适配相关推荐

  1. 麒麟V10SP1高级服务器版本操作系统离线安装docker容器技术

    麒麟V10SP1操作系统离线安装docker容器技术 在某些生产环境迁移过程中,往往需要离线安装软件.生产环境服务器是不能连接互联网的. 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V ...

  2. qt5.15.2-银河麒麟-龙芯国产化-项目打包踩坑实录

    qt5.15.2-银河麒麟-龙芯国产化-项目打包踩坑实录 linuxdeployqt几乎是唯一解决方案,网上各种自己写脚本根据ldd去拷贝的,最后大概率都是segment default-除非你是纯Q ...

  3. 基于ARM64银河麒麟V10系统(PK体系)适配安装Ambari2.7.3+HDP3.1

    引言 目前市场上主流的大数据平台以CDH和HDP两种为主,而两种大数据平台都是基于Apache原生态版本改进的,HDP版本的更贴近于原生态版本,开源率100%,基本上支持所有的开源大数据组件.CDH版 ...

  4. (转)银河麒麟V10sp1服务器系统安装redis不能使用的解决办法

    我们在适配时,经常需要安装redis,但是在银河麒麟 V10sp1 服务器系统上安装使用 redis 的时候会有诸多问题,今天我们就来逐步分析解决一下. 1. 配好外网,使用麒麟源安装redis: 先 ...

  5. 国产化硬件适配能力再升级,百度天工AIoT智能边缘助力提升边缘AI算力可控能力

    伴随AI+IoT技术的发展,其应用场景在不断细化,对AI芯片及硬件产品的个性化需求也在增加,这让众多边缘硬件厂商看到了新的机遇.一时间涌现众多边缘硬件厂商,进一步衍生出种类繁多的AI芯片及硬件产品线, ...

  6. HMI-7-[高分屏支持]:Qt 适配高分屏

    基于Qt的汽车仪表模拟 照例,还是先上效果图,宣传哈哈哈哈哈 今天学到一个新东西,就是Qt对高分屏的支持,即高DPI的支持,有个Qt写的软件在老板的SB2上运行出现了显示异常,因为老板的电脑分辨率是3 ...

  7. 人大金仓国产化数据库适配

    最近公司接到需求,项目要进行国产化适配,数据库是人大金仓中间件是TongWeb浏览器是uos,项目所用到的技术是LayuiAdmin.ssm.mybatis-plus.springboot等,数据源切 ...

  8. 银河麒麟V10操控系统Qt安装

    下载安装镜像 申请试用https://www.kylinos.cn/support/trial.html, 根据CPU架构选择要下载的安装包. AMD.Intel的CPU下载银河麒麟桌面操作系统V10 ...

  9. 麒麟 mips mysql_中标麒麟OS+龙芯MIPS适配开源中间件

    大纲 一 背景 二 目标 三 服务器 四 中间件适配 五 应用 六 部署 七 风险 八总结 九 最后rpm 制作 一 背景 19年国家开始筹备和实施安可工程.我司有幸参与其中. 二 目标 适配安装OS ...

最新文章

  1. 在CentOS 6.9 x86_64的nginx 1.12.2上开启echo-nginx-module模块实录
  2. 编程之美-构造数独方法整理
  3. 基于本地部署的hyperledger fabric升级chaincode
  4. Leaf:美团分布式ID生成服务开源
  5. .NET Core:面向未来的开源跨平台开发技术
  6. P6076-[JSOI2015]染色问题【组合数学,容斥】
  7. “3D几何与视觉技术”全球在线研讨会第三期
  8. IntellijIDEA配置Maven
  9. linux登录vnc的命令行,用VNC远程登陆linux (ZT)
  10. 《剑指offer》面试题46、47、49
  11. 升讯威周报与工时统计系统 V3
  12. 如何破解无法炸开的CAD加密图纸
  13. 色彩专题(PS的颜色理论)
  14. Java制作五子棋 V1.0
  15. 如何查询网站虚拟服务器的ip,正确姿势查看海外虚拟主机真实IP地址 cPanel面板IP信息...
  16. 【干货】教你用python给你的微信朋友群发私人订制的藏头诗
  17. slice splice split
  18. 给Bert加速吧!NLP中的知识蒸馏论文 Distilled BiLSTM解读
  19. 易地推拓客团队分享没有利润,就没有品质和服务
  20. ai在计算机教学中的应用,浅谈人工智能在教育中的应用

热门文章

  1. 微信小程序之页面样式以及背景图片显示问题
  2. clamav --reload 加载病毒库源码分析
  3. dlib 面部表情跟踪
  4. 原来国家的名字可以如此浪漫(the Romantic Name of a Country)
  5. IEduChina2019国际教育展在北京完美落幕
  6. 【解决方法】Pymongo insert 卡住
  7. 茂名天源石化等一批项目开工 广东5大炼化基地发展重点确定
  8. PLC远程监控与数据采集方案
  9. 直接反投影 matlab,直接反投影法.ppt
  10. C++中出现[Error] ‘rand‘ was not declared in this scop报错