c - Borland vs. MingW/GCC 编译速度..

标签 c gcc compiler-construction mingw turbo-c

我是 Borland 的长期用户(从 Turbo C 开始)(直到 BC5.2)。 我已经将 MingW/GCC 与 CodeBlocks 一起使用了大约一年,主要是 额外的支持尤其是。原生 64 位整数。

无论如何,我有一个关于编译速度的问题。

我有一个 C (Win32) 文件,其长度约为 60,000 行。 在 Borland 5.2 上,这个文件大约需要 3-5 秒来编译。 在 GCC 上,它需要 35 秒多一点。

我使用的 GCC 命令行选项是。

-std=c99 -s -O2(我也试过-O)

最终的 exe 大小几乎相同 +/- 50kB。

为什么编译时间差别这么大?在那里 一种加速 GCC 以与 BC5.2 相媲美的方法?

最佳答案

Borland 的编译器从一开始就设计得很快,至少根据 marketing 是这样。和基准测试在当时发布,并在业界得到广泛认可。它们针对单一架构,即 x86 系列。

gcc 并不是为了快速而设计的。它旨在:

  • 多种架构的目标代码,从嵌入式 Controller 到 super 计算机
  • 托管在多种架构上
  • 与不断变化的 C++ 语言标准保持同步

预期用途的分歧无疑会影响其性能。

关于c - Borland vs. MingW/GCC 编译速度..,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7569046/

相关文章:

C语言如何用整数倒序扫描文件?

c - 当您不知道接收到哪个结构时如何从结构接收数据

c++ - 更改版本后降级 g++

c++ - 至强的 gcc 优化标志?

c++ - 在 C++ 中的条件或控制语句中声明和初始化变量

java - GWT 即时编译

c - C语言对文件的读写

c - 如何将 hping3 的输出从子级传递到父级?

c++ - '-fuse-ld=gold' 标志的目标是什么?

c++ - 使用分配给函数返回值的局部变量或直接使用函数