在龙芯平台源码安装Qt5.15

本来自带的是Qt9,但是因为想要编译某软件,要求Qt>11,龙芯的支持又比较少,所以就自行源码编译。

操作环境

依赖安装

由于是龙芯平台,虽然大多数依赖是能找到的,可能还会有一些漏网之鱼,所以就不一一列举了,按照这个文档挨个装就好了:

添加设备支持

正常来说,不做任何修改就编译是会报错的,大概是"qtbase_src_make faild",具体我就不找了,原因就是没有对设备进行支持。

好在Qt已经提供了两款mips的板卡支持,如下图红框下两个,所以只需要复制一份,然后改改配置就能用了。

可以看到我添加的板卡支持是:linux-mips64el-4000-g++

修改其中qmake.conf的配置,可以参考我的修改

#
# qmake configuration for linux-mipsel-broadcom-97425-g++
#MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublibinclude(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)load(device_config)# 注释掉这一部分,检查-device-option后的内容,对新添加的板卡没啥用,反正也不知道新版卡会报啥错
#defineTest(qtConfSanitizeMkspec) {
#    isEmpty(B_REFSW_DEBUG): \
#        error("B_REFSW_DEBUG needs to be set via -device-option B_REFSW_DEBUG=(y|n)")
#    isEmpty(BRCM_ROCKFORD_PATH): \
#        error("BRCM_ROCKFORD_PATH needs to be set via -device-option BRCM_ROCKFORD_PATH=<path>")
#    isEmpty(BRCM_APPLIBS_PATH): \
#        error("BRCM_APPLIBS_PATH needs to be set via -device-option BRCM_APPLIBS_PATH=<path>")
#    deviceSanityCheckCompiler()
#}# 修改下面编译器的配置,如果是升级了gcc7,应该很容易理解下面的路径
# Modify the defaults we loaded above
CROSS_COMPILE           = /opt/rh/devtoolset-7/root/usr/bin/
QMAKE_CC                = /opt/rh/devtoolset-7/root/usr/bin/mips64el-redhat-linux-gcc
QMAKE_CXX               = /opt/rh/devtoolset-7/root/usr/bin/mips64el-redhat-linux-g++
QMAKE_LINK              = /opt/rh/devtoolset-7/root/usr/bin/mips64el-redhat-linux-g++
QMAKE_LINK_SHLIB        = /opt/rh/devtoolset-7/root/usr/bin/mips64el-redhat-linux-g++QMAKE_AR                = /opt/rh/devtoolset-7/root/usr/bin/ar cqs
QMAKE_OBJCOPY           = /opt/rh/devtoolset-7/root/usr/bin/objcopy
QMAKE_NM                = /opt/rh/devtoolset-7/root/usr/bin/nm -P
QMAKE_STRIP             = /opt/rh/devtoolset-7/root/usr/bin/strip#TODO: Clean Qt to work with uclibc not calling itself GLIBC.
#QMAKE_CFLAGS           += -D__FORCE_NOGLIBC
#QMAKE_CXXFLAGS         += -D__FORCE_NOGLIBC# 板卡名称在此定义
BRCM_PLATFORM           = 3a4000# Figure the kind of directfb build used.
BRCM_BUILD_TYPE         = debug
contains(B_REFSW_DEBUG, [Nn]) {BRCM_BUILD_TYPE     = release
}QMAKE_INCDIR_OPENGL_ES2 = $${BRCM_ROCKFORD_PATH}/middleware/v3d/interface/khronos/include
QMAKE_LIBDIR_OPENGL_ES2 = $${BRCM_ROCKFORD_PATH}/middleware/v3d/lib_$${BRCM_PLATFORM}_$${BRCM_BUILD_TYPE}
QMAKE_LIBS_OPENGL_ES2   = -lv3ddriver -lrt
QMAKE_LIBS_EGL          =QMAKE_INCDIR_POST      += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
QMAKE_LIBDIR_POST      += $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3
QMAKE_RPATHLINKDIR_POST += $$QMAKE_LIBDIR_OPENGL_ES2 $${BRCM_APPLIBS_PATH}/opensource/zlib/zlib-1.2.3# DirectFB platform hooks for this hardware
QT_CONFIG              += directfb_egl egl
DIRECTFB_PLATFORM_HOOKS_SOURCES = $$PWD/qdirectfbeglhooks_bcm97425.cpp
DIRECTFB_PLATFORM_HOOKS_INCLUDEPATH = $${BRCM_ROCKFORD_PATH}/middleware/platform/directfb
DIRECTFB_PLATFORM_HOOKS_LIBS = -ldbpl
DIRECTFB_PLATFORM_HOOKS_LIBDIR = $${BRCM_ROCKFORD_PATH}/middleware/platform/directfb/lib_$${BRCM_PLATFORM}_$${BRCM_BUILD_TYPE}QT_QPA_DEFAULT_PLATFORM = directfbeglload(qt_config)

configure

然后就是配置生成Makefile

[root@localhost qt-5.15.2] mkdir build && cd build[root@localhost qt-5.15.2] ../configure -v -device linux-mips64el-4000-g++ \-device-option CROSS_COMPILE=/opt/rh/devtoolset-7/root/usr/bin/  \-opensource -confirm-license -optimized-qmake -reduce-exports \-release -qt-pcre -make libs

make

然后会提示使用make之类的工具进行安装,我这里提示我使用gmake,为了编译快一点,我运行了gmake -j 4

编译通过以后再运行gmake install进行安装,最后会安装在/usr/local/Qt-5.15.2

在其中的bin目录执行./qmake -v可以看到安装成功

配置环境变量

然后配置环境变量以便常用,添加如下两句到用户目录的.bashrc中,对应路径自行修改即可

export LD_LIBRARY_PATH=/usr/local/Qt-5.12.10/lib/:$LD_LIBRARY_PATH
export PATH=/usr/local/Qt-5.12.10/bin:$PATH

然后在任何地方都可以使用了

完成

如果要尝试qtcreator的话,本机自带是:

我不太懂Qt,这个版本的关系不太清楚,不过在设置Kit的时候是可以编译的

然后随便编译一个,效果如下:

参考链接

在树梅派上构建Qt本机版本

在龙芯平台源码安装Qt5.15相关推荐

  1. 最详细新版网课联盟27刷网课平台源码+安装教程+最新模板+下载地址

    新版网课联盟27刷网课平台源码+安装教程+最新模板 第一步:准备一个服务器+域名 没有域名暂时使用服务器网址也可以 第二步:上传文件 上传文件到wwwroot上面,进行解压 第三步:进行防伪静态设置: ...

  2. 龙芯平台下软件安装(怎么寻找龙芯下的package)

    不同Linux操作系统发行版的一大区别就是软件包管理不同,比如Fedora/RHEL系的rpm,Centos/Debian的deb.在龙芯等自主平台上软件有两类来源一类是国内商业软件如wps.QQ等, ...

  3. 风铃发卡平台源码安装教程(宝塔面板+云服务器轻松搭建)

    风铃发卡平台源码下载地址及安装教程:点击查看 首先,安装宝塔面板,安装教程可以参考下面的文章: 阿里云服务器如何安装宝塔面板(Linux/windows系统) 腾讯云服务器如何安装宝塔面板(Linux ...

  4. 龙芯3B1500平台,源码安装nodejs过程中失败问题

    http://ask.loongnix.org/?/question/91 你好,我在龙芯3B1500,安装已经移植成功的Nodejs-4.3.1 ,完全按照社区步骤走的. 机器上gcc版本4.8.3 ...

  5. 什么是龙芯平台JDK?国产龙芯平台JDK版本解惑

    什么是龙芯平台JDK? 龙芯公司基于OpenJDK从无到有实现的LoongArch64和MIPS64上的版本. 龙芯平台JDK是基于开源的OpenJDK研发的,通过了JCK的测试,符合Java SE的 ...

  6. uos20(龙芯平台)上编译及更换最新kernl 5.9及kernel 4.19

    OS: uos 20 龙芯版 下载龙芯或龙梦提供的4.19源码或从内核官网下载最新kernel(验证过5.9.13) 龙芯源码下载地址:http://ftp.loongnix.org/kernel/l ...

  7. PHP云课堂在线学习平台源码带文字安装教程

    云课堂在线学习平台源码带文字安装教程 运行环境 服务器宝塔面板 PHP 5.6 Mysql 5.5及以上版本 Linux Centos7以上 这是一个功能齐全的云课堂在线学习平台,包括有直播系统,点播 ...

  8. APP分发系统大仙分发平台源码第二个版本 一键安装版

    介绍: PHP APP分发系统大仙分发平台源码第二个版本 一键安装版 此版本支持苹果免签封和打包,一键执行全新安装   内附安装说明 网盘下载地址: https://zijiewangpan.com/ ...

  9. 5.3.3.tat.gz php_一步步在LINUX中源码安装PHP运行平台

    一步步在LINUX中源码安装PHP运行平台 一步步在LINUX中源码安装PHP运行平台 本人是LINUX新手, 今天我们要学习一下如何在LINUX环境下安装PHP运行环境 目标:在LINUX环境下源码 ...

最新文章

  1. Linux下gedit显示行号
  2. pip升级之后出现:/usr/bin/pip: No such file or directory
  3. c语言预处理指令之 ##
  4. 前端学习(2983):一文理解数据劫持1
  5. 深入学习二叉树(二) 线索二叉树
  6. 遍历聚合对象中的元素——迭代器模式(四)
  7. mysql事务操作代码_Mysql中事务的使用【mysql】
  8. 模块应用:Arduino避障小车
  9. 初识大数据 小孩子都懂的大数据
  10. Verilog HDL 出租车计费器实现
  11. Google Earth Engine——使用climata和Python从USGS获取流数据
  12. Java设计模式--------观察者模式
  13. main flag redefined: graceful
  14. 简单工厂和工厂方法模式的区别和个人看法
  15. 微信小程序之swiper无限轮播实现效果
  16. 计算机字体渲染的学问
  17. Redis Lua拓展及使用示例
  18. 使用python和sklearn的文本多标签分类实战开发
  19. html+css+js+jQuery学习笔记
  20. linux搭建mcpe服务器_在Linux的各个版本上安装、配置Minecraft服务器版

热门文章

  1. 微信中怎么打开app文件 安卓微信跳转打开外部浏览器打开app文件下载链接(苹果无需上架跳转Apple Store下载)
  2. _improve-3
  3. SVG相关知识与应用
  4. Java中常见异常统计
  5. Linux/c++服务器开发方向的重点
  6. Web前端:JavaScript基础篇之var关键字
  7. 新日本语能力考试N2文法蓝宝书(详解%练习)2019
  8. 夺命雷公狗jquery---18jquery中常用属性(方法)
  9. 免费药店收银系统哪个好?
  10. [乐意黎原创]Centos主机里为Apache添加页面压缩mod_deflate模块开启gzip压缩