Ana Sayfa

Tiny C Compiler (TCC): Küçük Boyutlu, Hızlı ve Çok Yönlü Bir C Derleyicisi

1 dk okuma

Tiny C Compiler (TCC), Fabrice Bellard tarafından geliştirilen, C kodunu derlemek ve çalıştırmak için tasarlanmış oldukça küçük, hızlı ve esnek bir C derleyicisidir. Yaklaşık 100KB'lık x86 çalıştırılabilir boyutuyla (C önişlemci, C derleyici, assembler ve bağlayıcı dahil) kurtarma diskleri gibi kısıtlı ortamlarda bile C kodunun derlenip yürütülmesine olanak tanır. TCC, byte code overhead olmadan doğrudan x86 kodu üreterek GCC'den kat kat daha hızlı derleme, birleştirme ve bağlama süreleri sunar. Ayrıca, ISOC99 uyumluluğuna doğru ilerlemekte olup, kendisini derleyebilme yeteneğine de sahiptir.

TCC'nin öne çıkan özellikleri arasında, herhangi bir C dinamik kütüphanesini doğrudan kullanabilmesi, isteğe bağlı bellek ve sınır denetleyicisi içermesi (güvenli kodun standart kodla serbestçe karıştırılmasına izin verir) ve C kaynak kodunu doğrudan derleyip çalıştırabilmesi yer alır. Bağlama veya birleştirme gerektirmeyen bu özellik, tam bir C önişlemci ve GNU benzeri assembler ile birlikte gelir. Ayrıca, C betiklerini destekleyerek, kaynak dosyanın ilk satırına #!/usr/local/bin/tcc -run eklenerek komut satırından doğrudan yürütülebilir. libtcc kütüphanesi sayesinde ise TCC, dinamik kod üretimi için bir arka uç olarak kullanılabilir.

Performans açısından TCC, Links Browser projesi üzerinde yapılan testlerde GCC'den yaklaşık 9 kat daha hızlı olduğunu göstermiştir. 76936 satırlık (başlıklar dahil) bir projede, TCC 2.27 saniyede 859000 satır/saniye hızla derleme yaparken, GCC 3.2 -O0 ile 20.0 saniyede 98000 satır/saniye hızına ulaşmıştır. Bu testler, TCC'nin özellikle hızlı derleme gerektiren uygulamalar veya gömülü sistemler için ideal bir çözüm olduğunu kanıtlamaktadır. TCC, GNU Lesser General Public License altında dağıtılmaktadır.

İçgörü

TCC, küçük boyutu ve yüksek derleme hızıyla, özellikle kaynak kısıtlı ortamlar ve hızlı geliştirme süreçleri için C programlamada önemli bir alternatif sunuyor.

Kaynak