Watcom C/C++
| Watcom C/C++ Open Watcom C/C++
| |
|---|---|
![]() Hallo-Welt-Programm in der IDE von Open Watcom C/C++. | |
| Basisdaten
| |
| Entwickler | Watcom International Corporation, Sybase |
| Erscheinungsjahr | 1988 |
| Aktuelle Version | 11.0c[1][2] (21. Dezember 2002) 1.9 (Open Watcom)[1] (2. Juni 2010) |
| Aktuelle Vorabversion | 2.0 (Open Watcom)[3] (4. September 2025) |
| Betriebssystem | Linux, DOS, OS/2, Microsoft Windows[4] |
| Programmiersprache | C |
| Kategorie | Compiler, IDE |
| Lizenz | Sybase Open Source Licence[5] |
| deutschsprachig | nein |
| openwatcom.org | |
Watcom C/C++ ist ein Compiler und eine Entwicklungsumgebung für die Programmiersprachen C und C++.
Der Compiler ermöglicht die Entwicklung von Anwendungen für die Betriebssysteme Linux, DOS, OS/2, Win32s, Windows 9x und Windows NT.[4]
Es werden die Befehlssatzarchitekturen x86 (16- und 32-Bit) unterstützt. Die Vorabversion von Open Watcom C/C++ 2.0 unterstützt zusätzlich den x64-Befehlssatz (64-Bit).[6]
Bei den Compilern von Watcom C/C++ handelt es sich um Cross-Compiler. Diese können also Programme für andere Betriebssysteme erzeugen.[7][8] Aus der 32-Bit-Entwicklungsumgebung für Windows NT können also beispielsweise 16-Bit-Programme erzeugt werden, die im Real Mode unter MS-DOS laufen.[4]
Geschichte
Die nachfolgende Tabelle enthält eine Auswahl der wichtigsten Änderungen der einzelnen Versionen:[1][9]
| Version | Datum | Beschreibung |
|---|---|---|
| Waterloo C for S/370 | 1984 |
|
| Watcom C 6.0 | 1988 |
|
| Watcom C 7.0 | 1989 |
|
| Watcom C 7.0/386 | ||
| Watcom C 8.0 | 1990 |
|
| Watcom C 8.0/386 |
| |
| Watcom C 8.5 | 1991 |
|
| Watcom C 8.5/386 | ||
| Watcom C 9.0 | 1992 |
|
| Watcom C 9.0/386 | ||
| Watcom C 9.01/386 |
| |
| Watcom C 9.5 | 1993 |
|
| Watcom C 9.5/386 | ||
| Watcom C/C++ 10.0 | 1994 |
|
| Watcom C/C++ 10.5 | 1995 |
|
| Watcom C/C++ 10.6 | 1996 |
|
| Watcom C/C++ 11.0 | 1997 |
|
| Watcom C/C++ 11.0b | 1998 | |
| Watcom C/C++ 11.0c | 21. Dezember 2002 |
|
| Open Watcom 1.0 | 28. Januar 2003 |
|
| Open Watcom 1.1 | 12. August 2003 |
|
| Open Watcom 1.2 | 7. Januar 2004 |
|
| Open Watcom 1.3 | 3. August 2004 |
|
| Open Watcom 1.4 | 14. Dezember 2005 |
|
| Open Watcom 1.5 | 26. April 2006 |
|
| Open Watcom 1.6 | 15. Dezember 2006 |
|
| Open Watcom 1.7 | 18. August 2007 |
|
| Open Watcom 1.7a | 23. Oktober 2007 |
|
| Open Watcom 1.8 | 21. Februar 2009 |
|
| Open Watcom 1.9 | 2. Juni 2010 |
|
| Open Watcom 2.0 | 2. April 2015 |
|
Neben Watcom C 6.0 wurde 1988 auch eine günstigere, im Funktionsumfang reduzierte Entwicklungsumgebung namens Watcom Express C veröffentlicht.[10][19]
Nachdem die kommerzielle Vermarktung von Watcom C/C++ 2002 eingestellt wurde, wird das Produkt unter dem Namen Open Watcom C/C++ als Open-Source-Projekt kostenlos angeboten. Neben dem Compiler für C/C++ umfasst das Projekt auch noch den Open Watcom Assembler und Open Watcom Fortran 77.[20][8]
Werkzeuge
Neben der Hauptanwendung umfasst die Entwicklungsumgebung von Watcom C/C++ einige (z. T. optionale) Werkzeuge. Vor der Veröffentlichung von Open Watcom beinhaltete Watcom C/C++ neben den hauseigenen Werkzeugen auch Komponenten des Windows SDKs von Microsoft. Einige Werkzeuge überschneiden sich daher in ihrem Zweck. In Open Watcom wurden die Werkzeuge von Microsoft entfernt.[9]
Werkzeuge von Watcom
Watcom C/C++ und Open Watcom C/C++ stellen u. a. folgende Werkzeuge zur Verfügung:[21][22]
- Dr. Watcom
Eine Alternative bzw. ein Nachbau der Software Dr. Watson von Microsoft.[23] - Watcom Source Browser
Ein Programm zur Visualisierung von Klassenbäumen und Abhängigkeiten. - Watcom Dialog Editor
Ein Nachbau des Microsoft Dialog Editors. Ein WYSIWYG-Editor zur Gestaltung von grafischen Benutzeroberflächen. - Watcom DDE Spy
Ein Nachbau von Microsoft DDE Spy zur Überwachung von DDE-Nachrichten. - Watcom Spy
Nachbau von Microsoft Spy bzw. Spy++ zur Überwachung von GUI-Nachrichten. - Watcom Image Editor
Nachbau des Microsoft Image Editors. Ein Editor für Rastergrafiken (BMP, ICO, CUR) - Watcom Resource Editor
Ein Editor für RES-Dateien. Für Dialog-Ressourcen wird extern der Watcom Dialog Editor geöffnet und für Grafiken der Watcom Image Editor. Für Menüs und String-Tabellen existieren interne Editoren. Das Programm kann auch Ressourcen aus ausführbaren Dateien (u. a. EXE und DLL) anzeigen. - Watcom Profiler
Leistungsüberwachung von Programmfunktionen.[24] - Watcom Debugger
Ein Nachbau des Debuggers WinDbg von Microsoft. - Watcom Zoom
Ein Nachbau von Microsoft ZoomIn. Eine Softwarelupe.
Werkzeuge von Microsoft
Aus dem Windows SDK waren bis einschließlich Watcom C/C++ 11.0c u. a. folgende Programme enthalten:
- Microsoft Dialog Editor
Ein WYSIWYG-Editor zur Gestaltung von grafischen Benutzeroberflächen. - Microsoft DDE Spy
Überwachung von DDE-Nachrichten. - Microsoft Spy
Überwachung von GUI-Nachrichten. - Microsoft Image Editor
Ein Editor für Rastergrafiken (BMP, ICO, CUR) - WinDbg
Ein Debugger. - WinDiff
Ein Werkzeug zum Vergleich von zwei Dateien. - Microsoft ZoomIn
Eine Softwarelupe. - Microsoft Process Viewer
Eine Software zum Überwachen von gerade ausgeführten Prozessen. Es können auch Prozesse von anderen Rechnern im Netzwerk überwacht werden, sofern dafür eine Berechtigung vorliegt. - Microsoft PortTool
Ein Werkzeug, das alte API-Elemente im Quellcode automatisiert durch neuere Versionen ersetzen kann. Beispielsweise können die 16-Bit-Funktionen, -Makros und -Strukturen der Windows-API in die entsprechenden 32-Bit-Pendants umgewandelt werden. - Microsoft API Monitor
Tracking von externen Funktionsaufrufen.[24] - Microsoft DispTest
Eine im Funktionsumfang reduzierte Version der IDE von Visual Basic 3.0, mit der keine ausführbaren Dateien erstellt werden können. Das Programm dient v. a. zum Testen von VBX-Steuerelementen und generell von 16-Bit-COM-Komponenten, die u. a. mit Watcom C/C++ erstellt werden können. - Microsoft Font Editor
Erstellung und Bearbeitung von Bitmap-Schriftarten im FNT-Format. - Microsoft Help Workshop
Erstellung von Hilfe-Dateien auf Basis von WinHelp (HLP-Format). - Microsoft OLE/COM Object Viewer
Ein Browser für alle registrierten COM-Objekte des Betriebssystems. Zudem können auch einzelne Typbibliotheken angezeigt werden.[25] - Microsoft Object Viewer (WinObj)
Browser für Betriebssystemobjekte. Inzwischen ist die Software Teil von Windows Sysinternals.[26] - Microsoft TAPI Browser
Übersicht über alle Komponenten und Funktionen der TAPI-Schnittstelle.
Vergleich mit anderen Compilern für C/C++
Obwohl Watcom C 9.5 auf einer vergleichbaren Stufe mit Visual C++ 1.5 oder Borland C++ 4.0 stand, bot die Softwareumgebung keine Klassenbibliothek für Windows an.[23] Visual C++ besaß MFC und Borland C++ OWL.[27]
Da der Watcom C Compiler im Vergleich zu den damaligen Konkurrenzprodukten besonders schnellen Code erzeugen konnte, wurde er zur Entwicklung mehrerer namhaften Spiele wie beispielsweise Doom, Descent, Death Rally, Retro City Rampage, Duke Nukem 3D und Vollgas eingesetzt.[20][28][29]
Literatur
- Wayne Russell: Watcom C/C++ Unleashed. Sams, ISBN 0-672-30893-2 (englisch).
- Ulla Kirch, Peter Prinz: C – Lernen und professionell anwenden: Mit Microsoft Visual Studio Express 2012 und Open Watcom-Compiler auf der DVD. 3. Auflage. MITP, 2013, ISBN 978-3-8266-9504-9.
- Andrew Schulman: Inside Watcom C 7.0/386. In: Dr. Dobb’s Journal. Band 15, Nr. 3, März 1990, ISSN 1044-789X, S. 74–83 (englisch, Volltext [abgerufen am 27. August 2025]).
Weblinks
- GitHub-Projekt. (englisch).
- Watcom C/C++ 11.0c und Open Watcom C/C++ 1.0–1.9 Downloads. (englisch, einschließlich Dokumentation im PDF-Format).
- Open Watcom C Library Reference (Version 2.0). (PDF; 2,1 MB; englisch).
Einzelnachweise
- ↑ a b c Project History. In: wiki.openwatcom.org. 25. Mai 2012, archiviert vom am 29. März 2021; abgerufen am 18. Mai 2025 (englisch).
- ↑ Hajo Schulz: Watcoms C/C++ und Fortran werden Open Source. In: Heise online. 23. August 2000. Abgerufen am 26. August 2025.
- ↑ Open Watcom v2 Releases. In: github.com. Abgerufen am 4. September 2025 (englisch).
- ↑ a b c Open Watcom C/C++ Getting Started (Version 2.0). (PDF; 447 kB) Chapter 1: Introduction to Open Watcom C/C++. In: open-watcom.github.io. S. 1–6, abgerufen am 26. August 2025 (englisch).
- ↑ The Sybase Open Source Licence (SPDX short identifier: Watcom-1.0). In: opensource.org. Abgerufen am 9. Mai 2025 (englisch).
- ↑ a b Open Watcom v2 Fork. In: open-watcom.github.io. Abgerufen am 26. August 2025 (englisch).
- ↑ Oliver Lau: C/C++-Compiler Open Watcom in Version 1.4 veröffentlicht. In: Heise online. 20. Januar 2006. Abgerufen am 16. Mai 2025.
- ↑ a b Michael Wilde: OpenSource-Compiler für C/C++ und Fortran freigegeben. In: Heise online. 8. Februar 2003. Abgerufen am 12. Mai 2025.
- ↑ a b Release Notes for Open Watcom C/C++ 1.9:
- Differences from Version 11.0
- Differences from Open Watcom Version 1.0
- Differences from Open Watcom Version 1.1
- Differences from Open Watcom Version 1.2
- Differences from Open Watcom Version 1.3
- Differences from Open Watcom Version 1.4
- Differences from Open Watcom Version 1.5
- Differences from Open Watcom Version 1.6
- Differences from Open Watcom Version 1.7
- Differences from Open Watcom Version 1.8
- ↑ a b Stephen Randy Davis et al.: Compiling the facts on C: Evaluating the traits of the new generation of C compilers. In: PC Magazine. Band 7, Nr. 15. Ziff Davis, 13. September 1988, ISSN 0888-8507, Watcom C, S. 115–183 (englisch, Volltext in der Google-Buchsuche).
- ↑ Karen D. Moser: Watcom claims first tool set to tap Windows, 32-bit memory: developers of CAD, math programs targeted. In: PC Week. Band 8, Nr. 3, 21. Januar 1991, ISSN 0740-1604 (englisch): “Watcom Group Inc announces C 8.0 /386 for Windows […] that will let programmers create full 32-bit applications for the Microsoft Windows 3.0 interface while taking advantage of all of the features of the 80386 microprocessor.”
- ↑ Michal Necasek: Watcom Win386. In: os2museum.com. 4. Mai 2012, abgerufen am 27. August 2025 (englisch).
- ↑ Watcom C Language Reference (Open Watcom 2.0): Based Pointers for Open Watcom C/16 and C/32. In: open-watcom.github.io. Abgerufen am 27. August 2025 (englisch).
- ↑ Jacek M. Sawoniewicz: Precompiled Headers. In: pja.edu.pl. Polish-Japanese Academy of Information Technology, abgerufen am 27. August 2025 (englisch).
- ↑ Readme: B-level Notes. In: Watcom C/C++ Version 11.0b. (readme.txt auf Installationsdatenträger). 24. Februar 1998 (englisch): “The SOM toolkit for OS/2 is no longer supported, and has been removed in this version.”
- ↑ Sybase to Open Source Watcom C/C++ and Fortran Compilers: SciTech Software Selected as Official Maintainer for the Open Watcom Project. In: sybase.com. 22. August 2000, archiviert vom am 25. September 2000; abgerufen am 27. August 2025 (englisch).
- ↑ Chapter 6.2.11: Designated Initializers. Abgerufen am 30. August 2025 (englisch).
- ↑ Peter C. Chapin: Open Watcom v1.7a released. In: os2world.com. 8. November 2007, abgerufen am 4. September 2025 (englisch).
- ↑ Of Interest. In: Dr. Dobb’s Journal. Band 13, Nr. 3, März 1988, ISSN 1044-789X, S. 130–132 (englisch, Volltext [abgerufen am 6. September 2025]).
- ↑ a b Open Watcom Dot Org: About Us. In: openwatcom.com. Archiviert vom am 29. April 2016; abgerufen am 7. Mai 2025 (englisch).
- ↑ Watcom Graphical Tools User’s Guide (Version 11.0c). (PDF; 1,5 MB) In: downloads.openwatcom.org. 2000, abgerufen am 8. September 2025 (englisch).
- ↑ Open Watcom Graphical Tools User’s Guide (Version 1.9). (PDF; 1,7 MB) In: open-watcom.github.io. 2010, abgerufen am 8. September 2025 (englisch).
- ↑ a b Nancy Micolaisen: Watcom C/C++ [16] / Watcom C/C++ [32]. In: PC Magazine. Band 13, Nr. 6. Ziff Davis, 29. März 1994, ISSN 0888-8507, S. 221–225 (englisch, Volltext in der Google-Buchsuche).
- ↑ a b Ron van der Wal: Source-Code Profilers for Win32. In: Dr. Dobb’s Journal. Band 23, Nr. 3, März 1998, ISSN 1044-789X (englisch, Volltext [abgerufen am 9. September 2025]).
- ↑ OLE/COM Object Viewer. In: learn.microsoft.com. Microsoft, abgerufen am 9. September 2025 (englisch).
- ↑ WinObj. In: learn.microsoft.com. Microsoft, abgerufen am 9. September 2025 (englisch).
- ↑ Jens Bartschat: Kurztutorial zur Windowsprogrammierung unter C++. Hrsg.: Universität der Bundeswehr. München 1995, ISBN 3-8386-4018-7, Kapitel 1.4: Klassenbibliotheken, S. 8 (eingeschränkte Vorschau in der Google-Buchsuche).
- ↑ Jari Komppa: Porting from DOS to Windows: Step by step through Death Rally’s journey to the new millennium. In: Game Developer. Band 17, Nr. 4. UBM, April 2010, ISSN 1073-922X, S. 38–41 (englisch, Volltext [ vom 10. Juni 2021 im Internet Archive] [PDF; 23,2 MB]).
- ↑ Wouter Groeneveld: The Creative Programmer. Manning, Shelter Island 2023, ISBN 978-1-63343-905-4, Kapitel 5.4.6: First-Google-hit coding, S. 113 f. (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “The now open source and fully documented Open Watcom C/C++ toolkit used to compile the game [Retro City Rampage] was also used by DOOM, Duke Nukem 3D, and Full Throttle.”
