繁体   English   中英

lld 链接器是 ld 和 gold 的替代品吗?

Is the lld linker a drop-in replacement for ld and gold?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

来自 LLVM 项目lld链接器lld正在开发,每周都会添加新功能。 它的开发人员承诺lldld快。 gold相比,它如何竞争?

lld 是ld替代品吗? 对于黄金,有一些障碍可以跳过

2 个回复

其中一位 LLD 开发人员 Rui Ueyama 回顾了 LLD 在 2016 年的进展,参见http://lists.llvm.org/pipermail/llvm-dev/2016-December/107981.html

  • “现在我很确定 [LLD] 将成为现有 GNU 链接器 [..] 的一个严肃的(在我看来更好)替代品。”
  • “LLD 现在能够链接大多数 x86-64 用户级程序。”
  • “FreeBSD 项目和我们正在努力使 LLD 成为操作系统的系统默认链接器,除了一些棘手的程序,如内核或引导加载程序,链接器大部分工作正常。” 已经实现了!
  • “LLD 支持 x86、x86-64、x32、AArch64、AMDGPU、ARM、PPC64 和 MIPS32/64,但完整性有所不同。”
  • “[T] 这里已经有一些系统使用 LLD 作为系统链接器,例如 CloudABI 或 Fuchsia。Chromium 和 Clang/LLVM 本身具有使用 LLD 构建它们的构建选项。”

而且,作为奖励:

  • “LLD 变得更快 [..] 在今年年初,LLD 需要大约 16 秒才能生成 1.5 GB 的 clang(调试构建)可执行文件。现在,单核大约需要 14.5 秒,20 核需要 8.5 秒。ld .gold 分别需要大约 25 秒和 20 秒。[..] 如果您遇到链接时间过长的问题,我建议您尝试 LLD。”

更新 2017 年春季根据其中一位开发人员的说法“LLD/ELF 现在至少可以用于 x86-64(并且可能用于 AArch64 和 MIPS)。”,请参阅http://lists.llvm.org/pipermail/llvm -dev/2017-March/111083.html还简要介绍了如何使用LLD。

该程序本身声称具有兼容性目标,并且似乎在简单的测试中运行良好

例如在 Ubuntu 20.04 上我安装

sudo apt install lld
lld --version

说:

LLD 10.0.0 (compatible with GNU linkers)

我可以用-fuse-ld=lld编译一个 C hello world:

gcc -fuse-ld=lld -ggdb3 -O0 -std=c11 -Wall -Wextra -pedantic -o hello.out hello.c

性能基准与黄金

我将很快在以下位置记录结果: 用黄金替换 ld - 有经验吗?

1 ld.so替代品

我需要让我的linux可执行文件“编译一次,到处运行”。 理论上它是可能的,因为我的程序只使用非常基本的系统调用(系统调用网络IO和文件IO)。 在实践中,这是一个不同的故事: 我的开发平台是Ubuntu 12.04,它有最新的内核,glibc和工具链。 我首先尝试静态链接我的可执行 ...

4 使用gold代替ld作为fedora上的系统链接器

我想使用gold作为我的系统链接器而不是ld,因为ld不支持-fPIC和-shared。 我按照这个特殊的url这样做, gold-plugin根据文档,我运行了gcc -v filename.c来找出gcc将运行的链接命令。 然后它告诉我检查运行collect2的行并用-plugin /p ...

6 ld.lld链接器在Windows上是否可以正常工作?

最初ld.lld似乎成功链接了,但是执行调用指令时可执行文件崩溃。 我正在使用clang 6.0.1 我的程序使用gcc ld链接并执行得很好。 有人告诉我驾驶员不完整,是真的吗? 是否有人成功使用ld.lld链接并在Windows上运行? ...

7 Redux 减速器的替代品

我正在构建一个其他应用程序将使用的库。 我的库是 redux 的扩展。 为了让这个问题尽可能笼统,我目前有中间件、动作创建器和一个减速器。 减速器是问题所在,因为我的减速器依赖于我作为库开发人员不能也不应该知道的状态结构。 用户可以使用combineReducers函数或其他函数,并为我的减速器 ...

9 html净化器的替代品

我想接受来自用户的 html 输入并将其发布在我的网站上,还想确保它不会因为脏 html 代码而对我的网站模板造成问题。 我过去使用 html 净化器,但 Html 净化器在我的一台服务器上不起作用。 所以我正在寻找最佳选择。 这纯粹是用php编写的。 它可以修复脏的 html 代码,例如 ...

2010-10-28 22:29:48 4 3021   php
10 ID选择器的替代品?

任何人都知道ID Selector的一个很好的替代品,因为它现在是RPX,至少对我来说,不会很好吗? 谢谢 ...

2009-01-18 21:04:09 3 465   openid
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM