Watcom c

Watcom c

在DOS開發環境中,Watcom C/C++ 編譯器 以編譯后的exe運行高速而著稱,且首個支持Intel 80386 "保護模式"的編譯器。

於90年代中期,大批的雄心技術遊戲(例如 Doom、Descent、Duke Nukem 3D 都以 Watcom C 寫成。引

基本介紹


Watcom C/C++ 編譯器、Watch Fortran 編譯器已經不在其先前所屬公司Sybase售賣, 而被 SciTech 軟體公司 作為 Open Watcom 開源包 發行。類似於其他的 開源編譯器(例如 [GCC])項目,Watcom C代碼小而便攜, 其編譯器後端(代碼生成器)的目標碼可變。該編譯器可在DOS、OS/2、Windows等操作系統上運行,並生成各種可運行的(不必是該操作系統的)代碼。
該編譯器支持Novell NetWare的 NLM 目標碼。目前正進行 為 Linux、modern BSD (例如FreeBSD) 操作系統 重定目標碼, 以便在 x86、PowerPC 及 其它處理器上運行。Open Watcom C/C++ 的1.4版於2005年12月發行,採用 Linux x86 為實驗目標, 支持NT、OS/2等host平台. 曾有某被棄置的QNX版本,但其編譯所須的庫並未開源發行。當前最近的穩定版是1.9版,在2010年6月發行。

發行歷史


綜觀如下
日期產品名
1984Waterloo C for S/370
1985在當前的代碼生成器上運作
1988Watcom C 6.0
祗在 DOS平台編譯、DOS平台運行
含 調試器(debugger)、整套運行時間庫
生成的代碼 優於 同期的編譯器
1989Watcom C 7.0
1989Watcom C 7.0/386
首個 32位版本, 祗在 DOS平台編譯、DOS平台運行
支持 Phar Lap DOS extender
未自帶 連接器(linker)、調試器(debugger)
1990Watcom C 8.0
1990Watcom C 8.0/386
增加了 連接器(linker)、庫管理器(librarian)、調試器(debugger) 與 分析器(profiler)
增加了 圖形庫
1991Watcom C 8.5
1991Watcom C 8.5/386
自帶 DOS/4GW
支持 Windows 3.0(Win386 extender)
支持 Unicode
可在 OS/2平台編譯
1992Watcom C 9.0
1992Watcom C 9.0/386
可在OS/2 2.0平台編譯、OS/2 2.0平台運行
486優化
支持基指針(Based pointer)
Watcom C 9.01/386支持Windows 3.1
1993Watcom C/C++ 9.5
1993Watcom C/C++ 9.5/386
增加 C++ 編譯器
Pentium 優化
可在Windows NT平台編譯、Windows NT平台運行
1994Watcom C/C++ 10.0
包含MFC
支持預編譯(Precompiled header)頭文件
16位、32位工具放入同一個包裡面
重新設計了調試器(debugger)
增加了C++類的瀏覽器(browser)
增加了Windows資源編輯器(resource editor)
Windows、OS/2上的圖形化IDE
1995Watcom C/C++ 10.5
OS/2、Win32的 本地(Native)的C++異常處理
支持Windows 95、NT 3.5
TCP/IP遠程調試
1996Watcom C/C++ 10.6
C語言 的Structured exception handling
改良了與Microsoft編譯器的兼容度。
1997Watcom C/C++ 11.0
C++ 編譯器支持Namespace、RTTI、新 style cast
支持64位整數
庫支持 多位元組(Multi-byte)字母名
支持 Incremental linking
在連接器(linker)、庫管理器(librarian)支持 COFF、ELF目標文件
增加 Microsoft 克隆工具
DLL based tools for better IDE integration
1998Watcom C/C++ 11.0B
1999Sybase 發行end-of-life Watcom C/C++ 11.0
2000Sybase 宣告 Watcom工具 開源
2001-09-27Watcom C/C++ 11.0c Beta
2002-12-21Watcom C/C++ 11.0c
2003-01-28Open Watcom 1.0
2003-08-12Open Watcom 1.1
2004-01-07Open Watcom 1.2
2004-08-03Open Watcom 1.3
2005-12-14Open Watcom 1.4
2006-04-26Open Watcom 1.5
2006-12-15Open Watcom 1.6
2007-08-18Open Watcom 1.7
2007-10-23Open Watcom 1.7a
2009-02-21Open Watcom 1.8
2010-06-02Open Watcom 1.9

兼容性對比


與其他編譯器的兼容性
Open Watcom的C語法 兼容其他(例如 Microsoft、Borland)編譯器, 對“_asm”標識符支持(for instance)略有不同。其他編譯器能對付的C代碼 Watcom也能對付, 而且質量更優、效率更高。