| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> 龙芯5000编译Qt环境报错 -> 正文阅读 |
|
[C++知识库]龙芯5000编译Qt环境报错 |
问题之前项目的Qt应用需要适配龙芯4000,龙芯4000使用的是mips架构,Qt环境的搭建基本上很顺利完成。但龙芯5000不是基于mips架构,是全新的指令集,据说效率相比mips提升了不少。全新的指令集,那意味着要重新编译Qt环境,按往常的编译步骤进行操作,然后就出问题了 报错如下
字面意思大概是当前的系统架构不支持Double-Conversion 百度一圈都没有这个错误的问题,Google倒是挺多的,不过也不是编译Qt出现的 解决思路报错的文件为qtbase/src/3rdparty/double-conversion/include/double-conversion/utils.h 打开这个头文件,找到报错的信息 是由于龙芯5000是全新的指令集,上面定义的宏并没有该架构,可以看到常见mips、aarch、alpha等,所以问题就出在这里,那是不是添加龙芯5000架构的宏就可以了?想是这么想,那就加上试试。 使用命令查看操作系统内核信息
架构为loongarch64 在defined(__mips__) ||后添加宏
重新编译make,发现就可以了!!! 一开始在defined(_MIPS_ARCH_MIPS32R2)后面添加,发现不行,在defined(__mips__)后添加就通过,不清楚是啥情况。另外使用defined(__loongarch64__)印象中好像也是不行,很懵圈,完全是试出来的。 这其中经历很多波折一步一步才找到这个解决方法,这也是比较表面的修改,其中的原理没有太深究,至于有没有其他隐患就不是很清楚了,反正是编译通过了。 其他思路这其中尝试了其他的解决思路,Double-Conversion是Qt依赖的第三方库,那是不是可以配置不依赖其进行编译?没错,还真有这个配置。 ./configure可以进行配置
采用-no-doubleconversion方式配置发现无法完成配置,makefile无法生成,提示sscanf_l and snprintf需要依赖libdouble-conversion,这条路是走不通了,我有点好奇这个配置项有什么用,提供可以不链接,但是配置了又通不过。 默认是使用qt源码中自带的,也可以依赖系统中安装的,qt源码中编不过那用系统的也可以。安装libdouble-conversion,发现没有现成的包,如果你所使用的系统有现成的包能够直接安装,那配置依赖系统的中库理论上也是可以解决的。 其实如果没有相应的包,使用libdouble-conversion源码进行安装,其实和qt带的源码是一样的。当然独立编译安装libdouble-conversion可以排除其他因素,更容易找到问题,我也是编译libdouble-conversion的时候发现在那个位置加上宏就可以了。 附带libdouble-conversion源码下载及安装说明,点击这里 |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 20:55:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |