Skaberen | Fabrice Bellard |
---|---|
Første version | 2002 |
Sidste version | 0.9.27 (13. december 2017) |
Depositum | repo.or.cz/tinycc.git |
Skrevet i | C og montør |
Support sprog | VS |
Operativ system | Linux , Microsoft Windows og Unix |
Miljø | X86 , ARM-arkitektur og x86_64 |
Type | Kompilator |
Licens | GNU Lesser General Public License version 2.1 ( d ) |
Internet side | bellard.org/tcc |
Tiny C Compiler (tcc, lille C compiler ) er en fuldt udstyret x86 , x86-64 og ARM C compiler udviklet af Fabrice Bellard . Det kan bruges på Unix , Linux og Microsoft Windows siden version 0.9.26 (fra 15. februar 2013). Den distribueres under GNU Lesser General Public License (GNU LGPL).
ANSI C og den nye ISO C99- standard understøttes især godt af tcc ; det er også kompatibelt med mange GNU C-udvidelser, såsom indbygget samling . At gøre tcc fuldt kompatibel kan dog gøre det betydeligt langsommere. Især giver den ikke trigraph-håndtering , korrekt type og expressionskontrol.
Dens licens giver alle mulighed for at bruge, ændre og / eller omfordele. Det kan bruges til at udvikle open source eller proprietær software.
tcc har sin oprindelse i OTCC ( Obsfucated Tiny C Compiler ), et program, som Bellard skrev for at vinde IOCCC ( Internation Obfuscated C Code Contest ) i 2002. Siden da har han forbedret og "nedgraderet" det. mørkere "programmet til at producere. tcc .
Udviklingen af tcc sænkes, fordi Fabrice Bellard har travlt med andre projekter. Der findes dog modificerede versioner, såsom Landleys Mercurial-gren , Dave Dodges samling af uofficielle tcc-patches , Debian- og kfreebsd-downstream-patches og grischkas gcc-patches.
Version 0.9.23 er udsat for en sårbarhed, der er klassificeret som CVE-2006-0635 eller sårbarhed 22956 for Open Source Sårbarhedsdatabase . Rapporten er, at tcc " indeholder en fejl, der kan have sikkerhedskomplikationer for det program, der er kompileret med det. Compileren kan ikke returnere en usigneret værdi af størrelsen på operatoren , hvilket resulterer i et potentielt overløb af heltal i dem. Objekter, som den kompilerer. " Dette fejl er blevet rettet i Rob Landleys gaffel og derefter i den officielle version af tcc til version 0.9.24.
Version 0.9.25 er den første version, der understøtter 64 bit.
TCC har en aktiv postliste , og den aktuelle version af Bellard er tilgængelig fra git .
De mest kendte anvendelser af tcc er: