DJGPP:挑战Richard Stallman的DOS传奇
The History of Djgpp
1989年,Richard Stallman在NNEUUG会议上断言gcc无法移植到MS-DOS,因为gcc太大而MS-DOS只是16位系统。我接受了这个挑战,在386/16上构建了首个版本gcc 1.35。为了在内存不足的情况下实现自编译,我开发了Go32虚拟内存扩展器。从最初基于BSD源码构建标准库,到后来添加C++支持并更名为DJGPP,再到引入VCPI和DPMI,这个工具逐渐成长为全球开发者的重要平台。如今,Quake、Info-Zip等知名软件都基于DJGPP的32位环境重写。2000年前后,DJGPP 2.0版本发布,实现了完全自引导,标志着这一传奇项目的成熟。
挑战在手,我开始了。
HN 评论区
28- dafelst
如果我没记错的话,DJGPP 和 Allegro 游戏库是我在 1996-1997 年左右初次接触 C++ 的起点。在 DOS 环境下能够拥有一个真正的 32 位保护模式系统(而且不需要盗版一堆其他编译器!),对当时的社区来说简直是巨大的进步。
没过多久我就转去用 MSVC 在 Win95/98 上开发了,但我非常感激 DJ 提供的编译器,以及 Shawn Hargreaves 提供的 Allegro。
- pacman128
90 年代我在教授 32 位保护模式汇编语言课程时就用过它(配合 NASM 汇编器);这样我的学生就能在自己的电脑上使用免费的开发环境。当时大多数课程还在用 MASM 的 16 位实模式,这套方案效果非常好。
- JimDabell
之前的讨论:https://news.ycombinator.com/item?id=39038095(2024 年 1 月,109 条评论)