Portable C Compiler

Cコンパイラであるpcc (Portable C Compiler)の動作が安定してきたということで、そろそろ1.0リリースのタイミングだということがpccのメーリングリストで伝えられた。pccは2009年にはC99機能の対応を実現。以後改善を重ね、ついに1.0に到達しようとしている。メールでは最新のpccでFreeBSD 9-CURRENT amd64システムのビルドに成功したことも記載されている。

pccは初期から存在しているCコンパイラのひとつ。GCCが人気を博すまでデファクトスタンダード的な位置づけにあった。ここ数年、GCCの肥大化やGPLv3へのライセンス変更の影響で再び脚光を浴びるようになっていた。GCCと比較した場合のpccの特徴は次のとおり。

  • C99に対応
  • BSDライセンス
  • 軽量でシンプル、コンパイルが高速で、メンテナンスが実施しやすい
  • GCCと比較して生成されるコードの実行性能はそれほど高くない

pccはシンプルであることを目指しており、メンテナンスが実施しやすい。肥大化したGCCと対極的な関係にある。ただし、生成されるコードはGCCの方が優れているとされており、多くのプロジェクトはGCCをデフォルトのコンパイラとして採用し続けている。ライセンスがBSDライセンスで扱いやすいことから、特に組み込み系で注目度が高い。OpenBSDのソースツリーにはすでに統合されている。

なお、GCCの代替えとなるコンパイラとしてはLLVMに人気がある。LLVMに比べるとPCCの注目度は低いといえる。LLVMは後発のコンパイラインフラストラクチャだけあってソフトウェア構成の見通しがよく、C/C++以外のプログラミング言語も積極的に活用を模索している。すでにLLVMへ移植したプロジェクトもあるほか、LLVMへの移行を模索しているプロジェクトもある。