查看原文
其他

Ubuntu 21.04将为其软件包启用LTO优化

御坂弟弟 FOSS Lab 2021-09-10
点击蓝字默默关注


根据邮件列表显示,Ubuntu 21.04 将为其软件包的构建启用 LTO 支持。

链接时间优化 LTO(Link time optimization)是一种链接时对整个程序多个编译单元优化的方法,其所生成的代码更快,文件更小。现在,像 GCC,Python 这样的上游项目已经默认打开 LTO 或提供 LTO 配置选项,其他 Linux 发行版也在发行时默认打开 LTO。此外,Linux Kernel 5.12 也或将支持 LTO 优化

根据 wiki 显示,除了 riscv64 外(不想减慢其构建速度),Ubuntu 21.04 计划在将 glibc 2.33 添加到发行版后为所有的 64 位架构默认启用 LTO。目前,LTO 的编译器标志已经添加到 dpkg-buildflags 中,可以在软件包构建中被覆盖,将在 amd64,arm64,ppc64el 和 s390x 上启用。同时,Ubuntu 21.04 提供了 LTO 的开关:

export DEB_BUILD_MAINT_OPTIONS=optimize=+lto// 打开 LTO
export DEB_BUILD_MAINT_OPTIONS=optimize=-lto// 关闭 LTO

另外,开发者已经对 LTO 支持分别用 GCC 9 和 GCC 10 进行了测试

  • GCC 9

    • https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20190906-eoan.html

    • https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20190906-lto-eoan.html

  • GCC 10

    • https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20201216-hirsute-hirsute.html

    • https://people.canonical.com/~doko/ftbfs-report/test-rebuild-20201216-hirsute-lto-hirsute.html

关于 Ubuntu 21.04 的 LTO 支持的详细情况,可以在其 wiki 上查阅。

wiki:https://wiki.ubuntu.com/ToolChain/LTO



往期推荐

IntelliJ IDEA 2021.1 EAP 1发布,支持Java 16和WSL 2

2021-01-29

11.1k Star,一个简单的基于浏览器的Markdown幻灯片工具

2021-01-29

热议 | GitLab 涨价

2021-01-29


扫码关注最新动态

公众号ID:fosslab

我就知道你“在看”
: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存