mailweb.openeuler.org
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
Compass-ci
Threads by
month
----- 2025 -----
April
March
February
January
----- 2024 -----
December
November
October
September
August
July
June
May
April
March
February
January
----- 2023 -----
December
November
October
September
August
July
June
May
April
March
February
January
----- 2022 -----
December
November
October
September
August
July
June
May
April
March
February
January
----- 2021 -----
December
November
October
September
August
July
June
May
April
March
February
January
----- 2020 -----
December
November
October
September
compass-ci@openeuler.org
February 2025
1 participants
1 discussions
openEuler 2503版本构建部分使能mold相关说明
by yinchuang
27 Feb '25
27 Feb '25
各位伙伴好: 背景: 为了提升openEuler软件包的编译效率,从而进一步提升门禁和开发者本地开发效率,我们在2503版本使用mold链接器来缩短C/C++库的链接时间。 Mold(A Modern Linker)是一种对比其他链接器(GNU ld、GNU gold、LLVM lld)链接效率更高的开源链接器, 其通过更高效的Identical Comdat Folding (
ICF)算法、更好的并行编程,更高效的多线程库等技术来提升链接的效率,具体可参考:https://github.com/rui314/mold/blo…
具体方案: 由于mold链接器本身存在一定的功能欠缺(对kernel的不支持,对linker script支持不完善)我们决定对一些编译时间较长且不受mold影响的包打开mold 链接: 1.
在2503版本上白名单内的软件包默认配置使用mold进行链接,白名单可参见:https://gitee.com/src-openeuler/openE…
2. 为了提供更加灵活的链接器配置方式,各软件包可在spec文件中覆写_ld_use变量来切换链接器,如: 1) %define _ld_use %{nil} 取消因为软件包在白名单中所添加的mold选项 2) %define _ld_use -fuse-ld=xxx 切换到不同的链接器,注意当定义多个-fuse-ld 选项时编译器会取最后一个配置项 3. 版本上会预装mold链接器来提供各软件包对mold的调用 收益:经统计通过使能mold的软件包编译效率总体可提升5+% 我们会持续在社区讨论mold使能可行性与风险,感谢大家。 openEuler Compiler SIG 印闯
1
0
0
0
Results per page:
10
25
50
100
200