FreeBSD 9でGCCの代わりにllvm clangでkernel・userland・portsをコンパイル

FreeBSD9から脱GNUの一環としてgccと新たにllvm clangがbaseに入りました。

現在、デフォルトはgccですが、近い将来gccはbaseから外れportsに追いやられることでしょう。

llvm clangでkernel・userland・portsをコンパイルする方法は/etc/make.confに以下を書くだけでOKです。

.if !defined(CC) || ${CC} == "cc"
CC=clang
.endif
.if !defined(CXX) || ${CXX} == "c++"
CXX=clang++
.endif
.if !defined(CPP) || ${CPP} == "cpp"
CPP=clang -E
.endif
# Don't die on warnings
NO_WERROR=
WERROR=
# Don't forget this when using Jails!
NO_FSCHG=

portsの対応状況ですが以下を見る限りかなり少なくなってきているのでclangデフォルトで問題ないですね。
http://pointyhat.freebsd.org/errorlogs/i386-9-full/index-reason.html
http://pointyhat.freebsd.org/errorlogs/amd64-9-full/index-reason.html

最新情報は以下をご覧ください。
http://wiki.freebsd.org/BuildingFreeBSDWithClang

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Time limit is exhausted. Please reload CAPTCHA.