百科问答小站 logo
百科问答小站 font logo



为什么 LLVM/Clang 能迅速发展起来? 第1页

  

user avatar   lan-se-52-30 网友的相关建议: 
      

1. LLVM / Clang License是BSD,这条很重要

2. GCC代码搓,历史包袱巨重,而LLVM / Clang 代码组织结构非常漂亮,你想要改LLVM / Clang 比 GCC 轻松很多。最近我给GCC和Clang都开过Bug,但是Clang的Bug我都愿意去找源码哪里可以修改,报Bug的时候也会说我找到的地方,如何修改等(如

Bug 23791 – Clang emit wrong mangling of long double type for PPC64 in the Red Hat

),但是GCC我都不愿意去看源代码(虽然我也不能看),只报Bug。

3. LLVM / Clang 自己的表现也确实很出色,编译速度,执行速度,诊断信息等

4. LLVM / Clang 的背后是有钱的苹果,有钱真的是大爷

而背后的动力和推手么,动力就是对GCC用的很不满,定制性,可扩展性等都非常的差,而且那时候苹果的Objective-C在GCC那里也得不到很好的支持。

这里再次说了License,就说说License这条到底有多重要。比如我们IBM编译器其实除了我所在IBM XL C/C++ Compiler,我们还有一个组是与GCC有关联的,叫做Advance Toolchain,简称AT,而AT Team的就是专干GCC的,而在那个组干过的人就永不能到我们这边干活。同样,由于License的原因,我们根本不准看GCC代码,只能猜,但是我们却又要保持与它的兼容性,那么有了BSD License那可就爽多了。

而你说其它开源的东西,如Linux等再造。其它开源的东西姑且不说,如果是类似Linux这样的东西造起来,那么先说一下新造出来的操作系统的生态问题吧。即为什么要用你这个操作系统,还要为你这个操作系统开发软件呢?




  

相关话题

  std::list::sort 用了什么算法?为什么速度这么快? 
  淘宝研发的 OceanBase 相比其他开源的 noSQL 数据库有什么独特的优点? 
  GitHub 上有哪些值得推荐的开源电子书? 
  开源与共产主义的本质区别是什么? 
  C语言编译器哪个好用? 
  大部分工具资料开源是不是导致码农内卷的主要原因? 
  最短的可以造成崩溃且编译器无法优化掉的 C++ 代码是什么? 
  没有法律效力的协议不用遵守?不遵守也不算违法吗 
  在手机上C语言编译器运行while(system(“pause”))为什么会导致手机重启? 
  Faker.js 成为社区控制的开源项目,由 8 名开发者维护,如何评价开源社区这一举措? 

前一个讨论
Windows 的路径中表示文件层级为什么会用反斜杠 “”,而 UNIX 系统都用斜杠 “/”?
下一个讨论
DirectX是谁开发的?有什么过人之处?





© 2024-05-20 - tinynew.org. All Rights Reserved.
© 2024-05-20 - tinynew.org. 保留所有权利