有人知道有一个同时支持 gcc 和 clang 的 GNU/Linux 项目吗?

有人知道有一个同时支持 gcc 和 clang 的 GNU/Linux 项目吗?

有谁知道一个项目(除了 Linux 单片内核),其中的程序可以由两个编译器编译并可用于观察它们的性能,有什么建议吗?最好是 debian 的程序/包,不要太大(请不要超过 200 MB 加下载),但足以说明目前谁是王者。

答案1

不确定您在问什么,但 Slackware 支持并默认安装 Gcc 和 Clang。

而且,不存在 GNU/Linux 内核这样的东西。有一个 GNU 内核 (Hurd) 和一个 Linux 内核 (Linux)。

答案2

如果您想比较编译器的性能,有很多基准测试。

请注意,编译器提供“良好”的基准测试结果当然是有利的,因此众所周知,编译器添加了损害实际用途的“优化”,以便获得更好的基准测试(也许是出于善意;基准测试很容易,相关真正的使用数据很难获得),甚至检测基准并偷工减料。这里不是指责 GCC 或 LVM,只是拿一铲盐来比较一下。此外,基准测试是要编译/运行的一组有限的程序,如果您的使用与基准测试有很大不同,那么结果对您来说将毫无意义。

最后,除非你的应用程序要广泛运行(即在你的机器上运行很长时间,在数百台机器上频繁运行并且性能至关重要),否则获得“最快的程序”是完全无关紧要的(只需看看有多少你的 Linux 系统管理命令是用 Python 编写的,这是一种很好的语言,但肯定没有速度记录;或者有多少“真正有用的”软件是用字节编译的 Java 或 .Net 开发的。你的作为开发人员/故障排除人员的时间比计算机的时间宝贵得多,除非在极端情况下。我会通过(a)可靠性(如果它崩溃或错误编译我的代码,我会非常生气),(b)标准合规性(可能是“与 GCC du jour 兼容的错误和扩展”来评估编译器) ,不是严格的“标准”,如果您想编译或链接其他人开发的软件),(c)用户友好的错误消息,甚至(d)编译速度。生成代码的性能(如果要考虑的话)要晚得多。

相关内容