Mold 1.0.1 发布,高速现代 Unix 链接器
Mold 是现有 Unix 链接器的快速替代品,它比 LLVM lld 链接器快几倍。
目前 Mold 发布了最新版本 1.0.1 ,此版本带来以下新功能和各种错误修复:
新功能
make install
现在创建/usr/local/libexec/mold/ld
,作为mold
可执行文件的符号链接。现在也为 GCC 执行此操作,通过传递-B/usr/local/libexec/mold
,可以告诉 GCCld
在该目录中使用,而不是/usr/bin/ld
. ( e8dcecf )- xxHash 库现在作为子树包含在模具的源树中,以便于构建。如果要链接到系统库目录中的 libxxhash,请传递
SYSTEM_XXHASH=1
到make
. ( 665bffa ) extern "C++"
指令现在在动态列表中受支持。( 7aa5c39 )- 过去在 Mold 中受忽略的标志
--color-diagnostics
,现已得到支持。( 6e290aa ) - 除了
*
,现在?
也被视为版本脚本(version script)通配符模式中的特殊字符。( 31b0248 ) --threads=N
选项已添加为--thread-count=N
. ( f9ff048 )- 已添加下列选项:
--defsym
(f6e8006),-z nodefaultlib
(8c86c28)-z separate-code
,-z noseparate-code
和-z separate-lodable-segments
(5601cf4),-z max-page-size
(f3766cd)
bug 修复
- 现在对未知
-z
选项发出警告而不是错误。( 8bc5736 ) - 之前为非 SHF_ALLOC 注释段创建了一个 PT_NOTE 段。这是一个错误的行为,应该只为内存分配的部分创建段。这个问题已经解决。( 76407a6 )
- 之前当未定义符号升级为动态符号时,版本脚本会影响它们的符号可见性,这是语义上不正确的行为,且会导致 libQt 构建失败(#151)。目前问题已修复。( 3663389 )
- 从 1.0.1 开始, Mold 的行为与 GNU ld 相同。( 04ccd4d )
- 以前,模具针对 Initial-Exec 线程局部变量应用了错误的重定位值。这导致 Mesa 3D 图形库 ( #197 )的链接失败。问题已解决。( d116113 )
- GCC 7 有一个错误,它在特定条件下针对线程局部变量发出不正确的重定位,为了与 GCC 7 的错误兼容性,mold 不会将其报告为错误。( d9606d6 )
- 如果输出文件包含多个线程局部 BSS 部分,则它们的布局会相互重叠。此错误导致使用 DMD 编译的程序出现运行时错误,DMD 是 D 语言的编译器 ( #126 )。此布局问题已解决。( b151de6 )
- 以前,在某些情况下的
--sysroot
中,mold 无法查找正确的文件。这导致ClickHouse ( #150 )的链接失败。这个错误已被修复。( 135f17c )

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
OpenRGB 0.7 发布,RGB 照明控制软件
OpenRGB 是一个 RGB 照明控制软件,它为许多不同的设备/品牌提供 RGB 照明控制,且不依赖于设备厂商的软件,支持Windows、Linux、 MacOS 。在照明方面,OpenRGB通过“一个应用程序统治所有设备”极大地改善 RGB 照明生态系统。 OpenRGB 0.7 引入了新的插件架构,可以更轻松地处理插件,新的设置选项卡,让用户无需手动编辑文件即可提供更多选项,而新的“保存到设备”功能,可以将设置保存到有条件的设备的内部存储器中,此外还有各种错误修复,以及相当多的新硬件支持。 支持的新硬件列表如下: - 其他 MSI Mystic Light 主板 - 已修复 0.6 中的罗技鼠标问题 - Logitech G213 键盘模式 - Corsair Commander Core - HyperX Alloy Origins Core - Alienware G5 SE - ASUS ROG Pugio - ASUS ROG Throne 耳机支架 - ASUS ROG Strix Scope - Obinslab Anne Pro 2 - 华硕 Aura SMBus ...
- 下一篇
SQLite 3.37.1 发布
SQLite 3.37.1 现已发布。SQLite 是一个 C 实现的 SQL 数据库引擎,它的特点是小型、快速、自包含、高可靠性和功能齐全。SQLite 嵌入在所有手机和大多数计算机中,也捆绑在为数众多的其它应用中,是世界上使用量最大的数据库引擎。 主要变化: 修复了3.35.0 版UPSERT增强引入的错误,该错误可能导致为某些晦涩但有效的 SQL 生成不正确的字节码,从而可能导致 NULL-pointer dereference。 修复读取损坏的数据库文件时FTS5中可能发生的 OOB 读取问题。 改进了CLI 中-- safe 选项的稳健性。 对 assert() 语句和测试用例的其他小修复 Hashes: SQLITE_SOURCE_ID: 2021-12-30 15:30:28 378629bf2ea546f73eee84063c5358439a12f7300e433f18c9e1bddd948dea62 SHA3-256 for sqlite3.c: 915afb3f29c2d217ea0c283326a9df7d505e6c73b40236f0b33ded91f812d...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7