告诉我过去和现在那些奇怪的、晦涩的或专有的 C 编译器和环境

主要观点:介绍了多种不同的 C 相关工具链和编译器,包括商业的和开源的,有些已不再活跃,有些仍在使用,还提及了它们的特点和历史。
关键信息:

  • 有 GCC 和 clang 等“工业级”编译器,MSVC 也在其中,同时还有如 cprocarocc 等较新的项目。
  • 列举了多个商业 C 工具链,如 PIC24 的编译器、tcc、Metrowerks CodeWarrior、THINK C、CodeWarrior 等,各有其特点和历史。
  • 提到了一些开源的 C 相关项目,如 LCC、Norcroft C 等,以及它们在不同系统和项目中的应用。
  • 讨论了不同编译器在处理各种特性(如 variadics、printf 特殊情况等)上的差异。
    重要细节:
  • PIC24 的编译器不支持 variadics 且 printf 有特殊情况。
  • tcc 可用于测试,作者用其 -run - 选项。Bellard 是多个重要项目的作者,还创建了 QuickJS 引擎。
  • Matt Dillon 的 DICE 是早期在 Amigas 上使用的 C 环境,后被 Metrowerks CodeWarrior 取代等。
  • 不同编译器在不同平台(如 Mac、Windows、Gamecube 等)上的使用情况和特点。
  • 如 THINK C 从添加 C++子集到被 Symantec 收购后逐渐变差,后被 Metrowerks 取代等。
  • 英特尔 C 编译器对英特尔芯片有优化,曾使用英特尔数学库,现在已切换到 LLVM 等。
  • 各种 C 相关工具链在不同历史时期的发展和演变,以及它们对 C 标准化过程的影响等。
阅读 9
0 条评论