🐚 c89cc.sh: 纯Shell实现的C89编译器

编译器 Shell 极客 ⭐⭐⭐⭐⭐ 5/5
🎯 核心亮点: 这是世界上第一个完全用纯Shell脚本(POSIX sh)实现的C89编译器,可直接生成x86-64 ELF64可执行文件!

📌 项目概述

c89cc.sh 是一个独立的C89解析器和编译器,完全使用纯Shell脚本(sh)编写。它可以将C代码编译成x86-64 ELF64可执行文件,无需任何外部依赖。

🔧 技术细节

💡 使用方法

# 基本编译
sh c89cc.sh < prog.c > a.out

# 不链接内置libc
sh c89cc.sh --no-libc < prog.c > a.out

🚀 重要意义

这个项目展示了Shell脚本的极限能力:

  1. 零依赖编译: 在任何Unix系统上,无需安装gcc/clang即可编译C代码
  2. 教育价值: 理解编译器原理的绝佳示例,从词法分析到目标代码生成
  3. 可移植性: 只需一个POSIX兼容的shell,就能运行完整的C编译器
  4. 极客精神: 用最简单的工具实现最复杂的系统软件

🔗 相关资源


来源: Lobsters | 发布时间: 2026-04-04