FreeBSD 为啥要废弃 GCC 改用 Clang/LLVM
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FreeBSD 为啥要废弃 GCC 改用 Clang/LLVM相关的知识,希望对你有一定的参考价值。
因为 GCC 是 GPL/LGPL 的,和 BSD 的协议不兼容(但是 BSD 的源代码可以被 GPL 项目引用,但是会被污染成 GPL)。这不符合 BSD 的协议风格。所以 FreeBSD 换了编译器,自己写一个编译器还是很不容易的,正好 llvm 是 BSD 的协议。和 FreeBSD 自己的协议完全一样,就拿来用了。 参考技术A 公司投资:就像许多主流的开源项目, FreeBSD从企业获得投资与开发工作
尽管Apple对FreeBSD的投资与开发到了何种程度并不容易揭露,但有相当多的重叠工作,因为Apple的Darwin OS使用了源自BSD的稳定的内核代码
此外,在成为2007年开源项目之前, Clang本身是源自于一个Apple内部项目的。
由于企业资源是FreeBSD项目的关键促进因素,或许迎合赞助商的需求是
一个显著的现实世界的驱动力。
FreeBSD下安装lua
额,一行命令搞定啊
make freebsd CC=clang && make install
花了我一晚上,问题是啥呢?
我在Makefile中压根没有看到CC的定义在哪儿,然后直接执行make freebsd的时候,告诉我gcc找不到。
我一想freebsd都不用gcc了,我总不能去为了lua装个gcc吧。
况且freebsd下面安装软件是在蛋疼,但是在Makefile中定义CC=clang似乎有不起作用。
然后今天试了下在命令行指定CC=clang,居然成功了。
以上是关于FreeBSD 为啥要废弃 GCC 改用 Clang/LLVM的主要内容,如果未能解决你的问题,请参考以下文章
为啥 malloc 不能在 FreeBSD-x64 内核空间分配大内存?