Watcom C/C++編譯器

Watcom C/C++ 編譯器DOS開發環境中,以編譯後的 exe 執行檔執行高速而著稱,且是首個支援Intel 80386 "保護模式"的編譯器。於90年代中期,不少在技術上具有雄心的遊戲(例如 DoomDescentDuke Nukem 3D)都以 Watcom C 寫成。[1]

Open Watcom
原作者Watcom、Sybase 公司、SciTech 軟件公司
開發者開源社群
首次發佈2003-01-28
目前版本1.9(2010-06-02)
原始碼庫github.com/open-watcom/open-watcom-v2
程式語言C, C++
作業系統多平台
檔案大小73.8 Mb
類型Integrated Development Environment
許可協定Sybase Open Watcom Public License version 1.0
網站www.openwatcom.org

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

發行歷史

編輯

綜觀如下[4]

日期 產品名
1984 Waterloo C for S/370
1985 在當前的碼產生器上運作
1988 Watcom C 6.0
  • 祗在 DOS平台編譯、DOS平台執行
  • 含 除錯器(debugger)、整套 runtime library (執行期程式庫,又譯作運行時庫
  • 生成的代碼 優於 同期的編譯器
1989 Watcom C 7.0
1989 Watcom C 7.0/386
  • 首個 32位元版本, 祗在 DOS平台編譯、DOS平台執行
  • 支援 Phar Lap DOS extender
  • 未內建 連接器(linker)、除錯器(debugger)
1990 Watcom C 8.0
1990 Watcom C 8.0/386
  • 增加了 連接器(linker)、庫管理器(librarian)、除錯器(debugger) 與 剖析器(profiler)
  • 增加了 圖形庫
1991 Watcom C 8.5
1991 Watcom C 8.5/386
1992 Watcom C 9.0
1992 Watcom C 9.0/386
  • 可在OS/2 2.0平台編譯、OS/2 2.0平台執行
  • 486最佳化
  • 支援基指標(based pointer)
Watcom C 9.01/386
1993 Watcom C/C++ 9.5
1993 Watcom C/C++ 9.5/386
  • 增加 C++ 編譯器
  • Pentium 最佳化
  • 可在Windows NT平台編譯、Windows NT平台執行
1994 Watcom C/C++ 10.0
  • 包含MFC
  • 支援預編譯標頭檔(Precompiled header)
  • 16位元、32位元工具放入同一個包裏面
  • 重新設計了除錯器(debugger)
  • 增加了C++類別的瀏覽器(browser)
  • 增加了Windows資源編輯器(resource editor)
  • Windows、OS/2上的圖形化整合開發環境(IDE)
1995 Watcom C/C++ 10.5
1996 Watcom C/C++ 10.6
  • C語言 的結構化例外處理(Structured exception handling)
  • 改良了與Microsoft編譯器的相容度。
1997 Watcom C/C++ 11.0
  • C++ 編譯器支援命名空間(Namespace)、RTTI、新的型別轉換(cast)
  • 支援64位元整數
  • 庫支援 多位元組(Multi-byte)字母名
  • 支援 Incremental linking
  • 在連接器(linker)、庫管理器(librarian)支援 COFFELF目標文件
  • 增加 Microsoft 克隆工具
  • 基於動態連結庫(DLL)的工具,以強化與 IDE 間的整合
1998 Watcom C/C++ 11.0B
1999 Sybase 發佈 Watcom C/C++ 11.0 的產品壽命終結(end-of-life)通告 
2000 Sybase 宣告 Watcom工具 開源
2001-09-27 Watcom C/C++ 11.0c Beta
2002-12-21 Watcom C/C++ 11.0c
2003-01-28 Open Watcom 1.0
2003-08-12 Open Watcom 1.1
2004-01-07 Open Watcom 1.2
2004-08-03 Open Watcom 1.3
2005-12-14 Open Watcom 1.4
2006-04-26 Open Watcom 1.5
2006-12-15 Open Watcom 1.6
2007-08-18 Open Watcom 1.7
2007-10-23 Open Watcom 1.7a
2009-02-21 Open Watcom 1.8
2010-06-02 Open Watcom 1.9

與其他編譯器的相容性

編輯

Open Watcom的C語法相容其他(例如 MicrosoftBorland)編譯器, 對「_asm」識別碼支援(for instance)略有不同。 其他編譯器能對付的C代碼 Watcom也能對付, 而且質素更優、效率更高。

參照

編輯
  1. ^ History - Open Watcom. [2009-10-13]. (原始內容存檔於2006-10-20). 
  2. ^ Installing Open Watcom on Linux - Open Watcom. [2015-05-06]. (原始內容存檔於2015-05-06). 
  3. ^ Latest Release (June 2010). [2009-10-13]. (原始內容存檔於2015-03-17). 
  4. ^ Open Watcom Wiki. [2009-10-13]. (原始內容存檔於2012-02-04). 

外部連結

編輯