Tiny C 컴파일러
Source: Hacker News

Tiny C Compiler
News
I am no longer working on TCC. Check the mailing list for up‑to‑date information.
Features
- SMALL! 어디서든 C 코드를 컴파일하고 실행할 수 있습니다(예: 복구 디스크). x86용 TCC 실행 파일은 약 100 KB이며 전처리기, 컴파일러, 어셈블러, 링커를 모두 포함합니다.
- FAST! 바이트코드 오버헤드 없이 네이티브 x86 코드를 생성합니다. 컴파일, 어셈블, 링킹 속도가 GCC보다 몇 배 빠릅니다.
- UNLIMITED! 모든 C 동적 라이브러리를 직접 사용할 수 있습니다. TCC는 완전한 ISO C99 호환을 목표로 하고 있으며 스스로를 컴파일할 수도 있습니다.
- SAFE! 선택적인 메모리 및 경계 검사 기능; 검사된 코드는 표준 코드와 자유롭게 섞어 사용할 수 있습니다.
- 별도의 링킹이나 어셈블 단계 없이 C 소스를 바로 컴파일하고 실행합니다. 전체 C 전처리기와 GNU‑스타일 어셈블러가 포함되어 있습니다.
- C 스크립트를 지원합니다: C 소스 파일의 첫 번째 줄에
#!/usr/local/bin/tcc -run을 추가하고 명령줄에서 바로 실행할 수 있습니다. libtcc를 사용하면 TCC를 동적 코드 생성을 위한 백엔드로 활용할 수 있습니다.
Download
Compilation Speed
TCC는 Links Browser 프로젝트에서 GCC보다 대략 9 배 빠릅니다.
| Compiler | Version | Time (s) | Lines/second | MB/s |
|---|---|---|---|---|
| TinyCC | 0.9.22 | 2.27 | 859 000 | 29.6 |
| GCC | 3.2 ‑O0 | 20.0 | 98 000 | 3.4 |
프로젝트는 76 936줄(헤더 포함)을 포함합니다. 동일한 헤더가 여러 파일에 포함되기 때문에 실제로 컴파일되는 라인은 1 950 947줄(67.2 MB)입니다. 측정은 2.4 GHz Pentium 4에서 수행되었으며, 실제 시간에는 컴파일, 어셈블, 링킹이 모두 포함됩니다.
보다 최근의 테스트:
Online Documentation
You Want to Help?
- 메일링 리스트에 버그를 보고하고(그리고 가능하면 직접 고치세요).
Links
- TinyCC mailing list
- Savannah project page and Git repository
- OTCC – 가장 작은 자체 컴파일 의사 C 컴파일러
- FFASN1 – 작지만 강력한 ASN.1 컴파일러
- LLVM Compiler Infrastructure
- SmartEiffel – TCC로 Eiffel 코드를 더 빠르게 컴파일
- The GNU C Compiler (GCC)
- The LCC Compiler
- The Small Device C Compiler (SDCC)
- Cyclone – 안전한 C 방언
- The D language
- Programming in C
- Scriptometer – 다양한 스크립트 언어(및 TCC) 평가
License
TCC는 GNU Lesser General Public License 하에 배포됩니다.
© 2001‑2018 Fabrice Bellard
Fabrice Bellard – TCC page