首页 > 系统相关 >记录centos stream 9 编译qt5.15.10源码

记录centos stream 9 编译qt5.15.10源码

时间:2023-09-02 21:55:30浏览次数:57  
标签:10 qt5.15 src make kun 源码 5.15 home

开始装的一些依赖库没有记录 gcc之类的,都是通过dnf安装的
主要是make过程中出现的问题(qtwebengine)及其如何解决
编译的命令如下

./configure -prefix /home/kun/usr/Qt/5.15.10 -opensource -confirm-license
make -j16
make install

configure阶段失败一般都是缺少,都是dnf解决的

链接gn失败

log如下

FAILED: gn
/usr/bin/g++ -O3 -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-strip-all -Wl,--as-needed -static-libstdc++ -pthread -o gn -Wl,--start-group tools/gn/gn_main.o base.a gn_lib.a -Wl,--end-group -ldl
/usr/bin/ld: cannot find -lstdc++
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Project ERROR: GN build error!
make[2]: *** [Makefile:98: sub-gn-pro-make_first] Error 3
make[2]: Leaving directory '/home/kun/dev-home/qtwebengine-everywhere-src-5.15.10/src/buildtools'
make[1]: *** [Makefile:55: sub-buildtools-make_first] Error 2
make[1]: Leaving directory '/home/kun/dev-home/qtwebengine-everywhere-src-5.15.10/src'
make: *** [Makefile:49: sub-src-make_first] Error 2

重要的是cannot find -lstdc++
一开始一直搞不懂为什么链接不到libstdc++.so,因为系统中是存在的
后来仔细查看编译命令:

/usr/bin/g++ -O3 -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-strip-all -Wl,--as-needed -static-libstdc++ -pthread -o gn -Wl,--start-group tools/gn/gn_main.o base.a gn_lib.a -Wl,--end-group -ldl

这里用到的是-static-libstdc++,也就是静态链接,需要*.a文件,查了下果然系统没有这个文件
centos stream9的dnf包管理器中没有找到相关的包,手动下载安装的
去pkgs.org找到对行的rmp文件,通过sudo rpm -ivh libstdc++-static-11.4.1-2.1.el9.x86_64.rpm
安装之后这个问题解决

perl-English 找不到

Project MESSAGE: perl -w /home/kun/usr/Qt/5.15.10/bin/syncqt.pl -module QtWebEngineCore -version 5.15.10 -outdir /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10 -builddir /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10 /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10
Can't locate English.pm in @INC (you may need to install the English module) (@INC contains: /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /home/kun/usr/Qt/5.15.10/bin/syncqt.pl line 55.
BEGIN failed--compilation aborted at /home/kun/usr/Qt/5.15.10/bin/syncqt.pl line 55.
Project ERROR: Failed to run: perl -w /home/kun/usr/Qt/5.15.10/bin/syncqt.pl -module QtWebEngineCore -version 5.15.10 -outdir /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10 -builddir /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10 /home/kun/dev-home/qtwebengine-everywhere-src-5.15.10
make[2]: *** [Makefile:48: sub-core_headers-pro-make_first] Error 3
make[2]: Leaving directory '/home/kun/dev-home/qtwebengine-everywhere-src-5.15.10/src/core'
make[1]: *** [Makefile:80: sub-core-make_first] Error 2
make[1]: Leaving directory '/home/kun/dev-home/qtwebengine-everywhere-src-5.15.10/src'
make: *** [Makefile:49: sub-src-make_first] Error 2

解决办法sudo dnf install perl-English

找不到expat.h头文件

   21 | #include <expat.h>
      |          ^~~~~~~~~
compilation terminated.
[10/11103] CXX obj/skia/skia/GrTwoPointConicalGradientLayout.o

虽然显示编译到第十个文件以后才挂掉,实际这个错误是编译第一个文件就出现了,
因为开启多线程的原因才导致后续的这些log输出

标签:10,qt5.15,src,make,kun,源码,5.15,home
From: https://www.cnblogs.com/feipeng8848/p/17674269.html

相关文章

  • 东方博宜OJ1009 数组逆序 C语言版
    题目描述给你 n 个整数,将其逆序输出。输入第一行一个整数 n (3≤n≤100)代表数的个数。第二行 n 个整数(空格隔开)(这些数在 0∼106 之间)。输出n 个整数(空格隔开)。样例输入3175输出571来源数组问题代码 #include<stdio.h>in......
  • wangEditor增加源码模式,添加查看源码功能
    wangEditor是一款轻量级的富文本编辑器。使用还比较方便,但是缺少查看源码模式,需要我们自定义一个menu给增加查看源码模式下面是wangEditor增加源码模式的代码:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="......
  • 搭建高效的企业培训系统:源码解析与最佳实践
    在现代企业环境中,培训和发展员工的重要性变得越来越明显。为了保持竞争力,企业需要不断提升员工的技能和知识。搭建一个高效的企业培训系统可以帮助企业实现这一目标。一、什么是企业培训系统? 企业培训系统是一个涵盖广泛功能的复杂系统。它不仅要管理培训内容,还需要跟踪员工的进度......
  • 基于ASP的网上选课系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:网上选课系统的开发是为了更好的让各个高校充分的利用校园网的软硬件资源,通过B/S架构来实现网上选课系统,实现了网上选课系统的无纸化管理,让网上选课系统、查询课程更为方便,让导师审核选课更加快捷。意义:网上选课系统使学生足不出户就能够提交选课,有效的......
  • 忻州师院毕业论文管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:忻州师院毕业论文管理系统的开发是为了更好的让各个高校充分的利用校园网的软硬件资源,通过B/S架构来实现忻州师院毕业论文管理系统,管理毕业论文信息,老师可以在线查询毕业论文进程,节省时间,提高效率。意义:本文研发的忻州师院毕业论文管理系统结合高校具体的......
  • 基于ASP的人才招聘管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于ASP的人才招聘管理系统的开发是为了提高企业的工作效率,减少企业员工的工作量以及相应的时间,节省一些不必要的开支,从而让求职者可以更快的找到工作,企业快速的挖掘人才。人才招聘管理系统不仅能为经营者提供相对应的市场信息,并且能够随时掌握市场的发展......
  • 基于Android的红马国旅网上旅行社APP的设计与开发-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于Android的红马国旅网上旅行社APP是为了游客提供个性化的服务。用户注册登录APP后可根据自己的意向查询相关景点的攻略信息,还可将这些信息分享至微信、QQ、新浪微博等社交平台。合理规划自己的时间,出行前先做好攻略,查清楚景点的地理位置、营业时间、公......
  • AP100N75 场效应MOS 100V75A低内阻 N沟道MOS管SGT DFN5×6
    Features 100V,75ARDS(ON)<9.2mΩ@VGS=10VRDS(ON)<13.5mΩ@VGS=4.5V AdvancedSplitGateTrenchTechnology ExcellentRDS(ON)andLowGateCharge LeadfreeproductisacquiredApplication LoadSwitch PWMApplication Powermanagement100%UISTESTED!1......
  • 芦芽山旅游资源管理系统的设计与实现-计算机毕业设计源码+LW文档
    一、选题的目的和意义: 本课题拟开发一个基于java的芦芽山旅游资源管理系统,开发的主要目标是通过芦芽山旅游资源管理系统,提供有用的信息数据,为旅游者提供可靠的旅游信息,对推动地方旅游业的发展具有积极有效的促进作用。本芦芽山旅游资源管理系统主要包括景点展示、酒店查看、在线......
  • 基于Android的组成原理在线课堂APP的设计与开发-计算机毕业设计源码+LW文档
    一、选题的目的和意义目的:基于Android的组成原理在线课堂APP是为了使教学管理工作系统化、规范化、自动化,从而达到提高课堂管理效率的目的。能够解决目前考勤管理效率、无法准确的统计出学生课程成绩等信息,而且系统开发价格便宜、后期维护成本极低。便于教师利用本系统更好的交流......