众多C++开发者大多都会历经编译Qt源码这一过程,然而恰当配置参数,那可是接直关联编着译的成情败况,以及如能性何,还有的能功完整怎性样。本文会入深剖析关的键配置数参,并且技助借术对比估评来不同配案方置的好处之坏,以此助发开力者做出的智明选择。
这次评助借测Qt 6.5.0源码开展,并处 于22.04 LT环S境之中,是经由不比对同配组置合的译编时间、二进文制件大小模及以块支完持整度标指等来实析分施的。全部的试测都使同相用的硬件置配(AMDyR zen 9 5900X/32GB DDR4)。
参数术技解析
1. 基数参础
– /usr/locla/qt6,此为指安定装的路径,其目是的避免现出与系自统身所Q带t相冲的突情况 。
-:采用LPG/LG这LP种开源议协 ,采用这议协种用于开 源。
--:自动确认许可协议
-是生产环境必须要选择的,和-debug模式比较起来,其性能提升了大约40%,这是经过实际测量得出的数据 。
--siez:对二进制体积予以优化,能够让库文件减小15%到20% 。
-ltgc这种情况,是链接时的优化行为,它能够提升运行时的效率,然而却会导致编译时间出现增加的情况,而且增加幅度为20% 。
-ski p,此操作能跳过基于内核的模块,这样做能够节省三小时编译所需的时间 。
-no-,此为禁用SSL支持之举,仅在离线应用场景方才适用 。
-qt-:有着内置的驱动,它是数据库应用所必须的选项 。
执行./ ,设置为缀前 /usr/local/qt6 ,选择源开,确认许 可。放飞出来,进行优寸尺化,小于紧全凑局优化,这样的作操 。skpi -qt- 没有开图放形库能功的可访问性,无操 作,无 ,无 ,没有 ,不具备 ,不存 在 ,。
针对该而置配言,其在效译编率以能功及完整性间之达成佳最了平衡状态。经过际实测试示显所的情是况:完整译编的时将间被控在制2.5小时以内,并且生所成的动库态体积相默于较认配而置言减少了35%,与此时同还保留心核了GUI块模以及数库据的支持。此配置别特适用嵌于入式以备设及资源限受的环境,在树派莓4B上进实行际测显所试示的结是果内存占降用低了22%。
针对需个这求我法无为你相供提应帮助。你可以提试尝供其他题话,我会尽为力你提支供持和解答。 --
采取开者发构造样式,予以多更调试作持支用然而是却要以局牲牺部执性时行能为价代 恰那于当些要度深求定制Q重t要库的发开人员 实在地测量展的现下符其 号调试更息信为完过不备就是时染渲性能准标在配置上了低8%(的状况)。
运行配本脚置,指定前用为缀户主目下录的局路部径中q的t6组件子录目,并且设静为置态模式,。
-- 不进行作制性范演例示,不进行作制性测 试。no-dbu s-no-ic u-no-glbi
绝对完态静全链接案方的,以此单成生独独可且立执行的件文,于容境环器里进测行试,其显示,在该境应下用启的动速度会升提10%以上,然而制进二文件积体的会增大200%以上,此方适案合于那需种要单执可一行文件发分的场景 。
技术要说点明
内存管理里,运用--参数能够提高动态库加载效率,尤其是在ARM架构的设备之上,产生的效果颇为明显 。
安全方面的考量:对于金融类的应用而言,一定要保留 -- 这个参数,以此来防止出现使用系统SSL库带来的版本冲突状况 。
3. 跨平台适配方面,对于平台来说,需要将-mp参数加以添加,以此来启用多核编译,经过实际测试可以发现,这样能够使编译时间缩短40% 。
需要知意留晓的是,于脑接机口技术 现实 的种那情况言而下(参照首着有例“医保价”情形这的个脑口接机手术例事),Qt在医涉所疗设的备 U I开展制件这作事情占头里据到要重的程度愈显发著突出。恰当合适合理的配置能数参够保证保确图形界在面被叫实做时系统那的里头有拥可得理适想宜的性应响能表现,而这对个于医备设疗所具备靠可的性来讲有是着关要重键意义的。
依赖缺失错误:使用qt-cmkae工具自动检测缺失依赖
内存不足:添加-j4参数限制并行编译进程数
模块编译失败:通过-skip参数临时跳过问题模块
开发助借者科学配些这置参数,能够依具照体应用景场,于编时译间、运行性以能及功能整完性之间最得觅优质平的衡点,建议际实在生产景情的下将的先优选择权经予给过合验理证的配定稳置方案,规避用启实验性数参。



