优化程序链接速度

2020-10-26 10:15:03 浏览数 (2)

通过二进制化、图片预编译等方式都可以大量优化程序的编译速度。

但是,最终产出链接产物时,大型项目的链接耗时仍然远超预期。

以 clang 为例,它依赖超过 100 个组件,最终产物 511M,链接平均耗时在 25s 以上(根据配置不同,会有所差异)。

上面的数据意味着“即使只改一行代码,最少也需要等待25s”。

通过一款开源的软件,我们可以很容易对此优化。

我们先看一份测试数据,下图是笔者的链接速度优化前后对比。

链接速度对比

从图中可以看出,链接速度大幅度减少(共计减少了73%)。

下面简单介绍一下优化步骤。

1、安装软件包 (注意,该命令最后会打印出 zld 安装的路径,我们稍后会用到)

brew install michaeleisel/zld/zld

2、替换默认链接器

* 在 Xcode 的工程配置中找到 Other Linker Flags

* 添加以下配置 -fuse-ld=<path to zld>

笔者的路径是 /usr/local/Cellar/zld/0.1.2/bin/zld

0 人点赞