Schöpfer | Fabrice Bellard |
---|---|
Erste Version | 2002 |
Letzte Version | 0,9,27 (13. Dezember 2017) |
Anzahlung | repo.or.cz/tinycc.git |
Geschrieben in | C und Assembler |
Unterstützungssprachen | VS |
Betriebssystem | Linux , Microsoft Windows und Unix |
Umgebung | X86 , ARM-Architektur und x86_64 |
Art | Compiler |
Lizenz | GNU Lesser General Public License Version 2.1 ( d ) |
Webseite | bellard.org/tcc |
Tiny C Compiler (tcc, winziger C-Compiler ) ist ein vollständiger x86- , x86-64- und ARM C- Compiler, der von Fabrice Bellard entwickelt wurde . Es kann unter Unix , Linux und Microsoft Windows seit Version 0.9.26 (ab) verwendet werden 15. Februar 2013). Es wird unter der GNU Lesser General Public License (GNU LGPL) vertrieben.
ANSI C und der neue ISO C99- Standard werden von tcc besonders gut unterstützt . Es ist auch mit vielen GNU C-Erweiterungen kompatibel, z. B. der Inline-Baugruppe . Wenn Sie tcc jedoch vollständig konform machen, kann dies zu einer erheblichen Verlangsamung führen. Insbesondere bietet es keine Trigraph-Behandlung , keine ordnungsgemäße Typ- und Ausdrucksprüfung.
Die Lizenz ermöglicht es jedem, sie zu nutzen, zu ändern und / oder weiterzugeben. Es kann verwendet werden, um Open Source oder proprietäre Software zu entwickeln.
tcc hat seinen Ursprung in OTCC ( Obsfucated Tiny C Compiler ), einem Programm, das Bellard 2002 schrieb, um den IOCCC ( Internation Obfuscated C Code Contest ) zu gewinnen. Seitdem hat er es verbessert und "herabgestuft". Verdunkelt "das zu produzierende Programm tcc .
Die Entwicklung von tcc wird verlangsamt, da Fabrice Bellard mit anderen Projekten beschäftigt ist. Es gibt jedoch modifizierte Versionen, wie Landleys Mercurial-Zweig , Dave Dodges Sammlung inoffizieller tcc-Patches , Debian- und kfreebsd-Downstream-Patches und grischkas gcc-Patches.
Version 0.9.23 unterliegt einer Sicherheitsanfälligkeit, die als CVE-2006-0635 oder Open Source Vulnerability Database 22956 klassifiziert ist . Der Bericht besagt, dass tcc " einen Fehler enthält, der Sicherheitskomplikationen für das damit kompilierte Programm haben kann. Der Compiler kann keinen vorzeichenlosen Wert des Operators sizeof zurückgeben , was zu einem möglichen Überlauf von Ganzzahlen in den von ihm kompilierten Objekten führt. " Fehler wurde in der Gabel von Rob Landley und dann in der offiziellen Version von tcc für Version 0.9.24 behoben.
Version 0.9.25 ist die erste Version, die 64 Bit unterstützt.
TCC hat eine aktive Mailingliste und die aktuelle Version von Bellard ist über Git zugänglich .
Die bekanntesten Verwendungen von tcc sind: