Watcom C/C ++ - Watcom C/C++

Åbn Watcom C/C ++
Watcom logo.png
Originale forfattere Watcom
Udvikler (er) Sybase , SciTech Software
Første udgivelse 8. januar 2003 ;
18 år siden
 ( 2003-01-08 )
Stabil udgivelse
1.9 / 2. juni 2010 ;
11 år siden
 ( 2010-06-02 )
Udgivelsesversion
2.0 / 2. april 2015 ;
6 år siden
 ( 2015-04-02 )
Depot github .com /open-watcom /open-watcom-v2
Skrevet i C , C ++
Operativ system DOS , Windows , OS/2 , Linux
Platform IA-32 , x86-64
Størrelse 66–84 MB
Type Integreret udviklingsmiljø
Licens Sybase Open Watcom Public License version 1.0
Internet side openwatcom .org

Watcom C / C ++ (i øjeblikket Open Watcom C / C ++ ) er en integreret udviklingsmiljø (IDE) produkt fra Watcom International Corporation for C , C ++ , og Fortran programmeringssprog . Watcom C/C ++ var et kommercielt produkt, indtil det blev afbrudt, derefter frigivet under Sybase Open Watcom Public License som Open Watcom C/C ++. Det indeholder værktøjer til udvikling og fejlfinding af kode til DOS , OS/2 , Windows , Linux operativsystemer , der er baseret på x86 , IA-32 , x86-64 kompatible processorer.

Historie

Selvom det ikke længere sælges kommercielt af Sybase , er Watcom C/C ++ - kompilatoren og Watcom Fortran -kompilatoren gratis tilgængelig som Open Watcom -pakken.

Stabil version 1.9 blev udgivet i juni 2010.

En forked version 2.0 beta blev frigivet, der understøtter 64-bit hosts (Windows og Linux), indbygget teksteditor, 2-faset build-system, og DOS-versionen understøtter lange filnavne (LFN).

Udgivelseshistorik

Den åbne Watcom Wiki har en omfattende historie.

Dato Produkt Noter
1984 Waterloo C til S/370
1985
  • Arbejdet med den aktuelle kodegenerator kodebase startede
1988 Watcom C 6.0
  • Kun DOS -vært og mål
  • Inkluderet en fejlfinding og et komplet sæt af runtime -biblioteker
  • Genererede bedre kode end andre kompilatorer på det tidspunkt
  • Watcom C Version 6.5 indeholdt grafikbibliotek, der ligner Microsoft Graphics Library
1989 Watcom C 7.0
1989 Watcom C 7.0/386
1990 Watcom C 8.0
1990 Watcom C 8.0/386
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 vært og mål support
  • 486 optimeringer
  • Baseret pointer support
Watcom C 9.01/386
1993 Watcom C/C ++ 9.5
1993 Watcom C/C ++ 9,5/386
  • C ++ compiler tilføjet
  • Pentium optimeringer
  • Windows NT -vært og målunderstøttelse
1994 Watcom C/C ++ 10,0
1995 Watcom C/C ++ 10.5
1996 Watcom C/C ++ 10.6
1997 1. kvartal Watcom C/C ++ 11.0
  • Namespace , RTTI , og nye stil støbt støtte i C ++ compiler
  • 64-bit heltal understøttelse
  • Multi-byte tegnstøtte på biblioteker
  • Støtte til inkrementel linkning
  • COFF og ELF objekt fil støtte i linker og bibliotekar
  • Microsoft klonværktøjer tilføjet
  • DLL -baserede værktøjer til bedre IDE -integration
  • MMX -understøttelse, herunder fejlfinding
  • Pentium Pro -optimeringer, herunder forudsigelse af grene
  • Novell NLM support
1998 Watcom C/C ++ 11,0B
1999-06-30
  • Sybase spørgsmål end-of-life varsel til Watcom C / C ++ 11,0
2000-08-22
  • Sybase annoncerer open sourcing af Watcom -værktøjer
2001-09-27 Watcom C/C ++ 11.0c Beta
2002-12-21 Watcom C/C ++ 11,0c
2003-01-28 Åbn Watcom 1.0
2003-08-12 Åbn Watcom 1.1
2004-01-07 Åbn Watcom 1.2
2004-08-03 Åbn Watcom 1.3
2005-12-14 Åbn Watcom 1.4
2006-04-26 Åbn Watcom 1.5
2006-12-15 Åbn Watcom 1.6
2007-08-18 Åbn Watcom 1.7
2007-10-23 Åbn Watcom 1.7a
2009-02-21 Åbn Watcom 1.8
2010-06-02 Åbn Watcom 1.9
  • Aktuel officiel version
2015-04-02 Åbn Watcom 2.0 Beta
  • GitHub V2 gaffel, mange rettelser
  • Åbn Watcom portet til 64-bit værter (Windows og Linux)
  • Ressourcekompiler og ressource -editor understøtter WIN64 -eksekverbare filer
  • indbygget tekst editor
  • tofaset byggesystem
  • DOS -version af værktøjer understøtter lange filnavne (LFN)

Licens

Den Open Source Initiative har godkendt licens som open source , men Debian , Fedora og Free Software Foundation har afvist det, fordi "Det kræver, at du udgive kildekoden offentlige, når du’Deploy’den overdækkede software, og’Deploy’er defineret at omfatte mange former for privat brug. "

Design

Compileren kan betjenes fra og generere eksekverbar kode til DOS , OS/2 , Windows , Linux operativsystemer . Det understøtter også NLM -mål for Novell NetWare . Der arbejdes løbende med at udvide målretningen til Linux og moderne BSD (f.eks. FreeBSD ) operativsystemer, der kører på x86 , PowerPC og andre processorer.

Koden er bærbar, og ligesom mange andre open source -kompilatorprojekter såsom GCC eller LCC er kompilerens backend (kodegenerator) retargetable.

Anvendelser

I midten af ​​1990'erne blev nogle af de mest teknisk ambitiøse DOS- computerspil som Doom , Descent , Duke Nukem 3D , Rise of the Triad og Tomb Raider bygget ved hjælp af Watcom C/C ++ ved hjælp af DOS/4GW- beskyttet tilstandsforlænger med Watcom kompilator.

Det blev brugt til at overføre spillet Retro City Rampage til DOS i 2015.

Det bruges af VirtualBox til at kompilere BIOS .

Den nuværende udvikling til FreeDOS kræver, at al C -kildekode skal kunne kompileres af Open Watcom C.

Open Watcom er den anbefalede kompilator til applikationer og driverudvikling til det OS/2-baserede ArcaOS- operativsystem.

Varianter

Der er en uofficiel gaffel af Open Watcom V2 på GitHub . En variant af 16bit DOS CRT bibliotekets opstart blev oprettet med WASM .

Kompatibilitet

Open Watcoms syntaks understøtter mange konventioner, der er introduceret af andre kompilatorer, f.eks. Microsofts og Borlands , herunder forskellige konventioner vedrørende (f.eks.) Antallet af førende understregninger på "asm" -tagget. Kode skrevet specifikt til en anden compiler frem for standardkompatibel C eller C ++ kompileres ofte med Watcom-compileren.

Compileren understøtter C89/C90 -standarder som standard.

Open Watcom understøtter delvis kompatibilitet med C99 -standarden. Det implementerer de mest almindeligt anvendte dele af standarden. De er dog kun aktiveret via den udokumenterede kommandolinjekontakt "-za99". Tre C99-funktioner er blevet samlet som C90- udvidelse siden pre-v1.0: Kommentarer i C ++ -stil (//), fleksible array-medlemmer, efterfølgende komma tilladt i enum-erklæring.

Compileren understøtter i øjeblikket ingen nye større C11 -funktioner, selvom C -biblioteket indeholder "Safe C" -funktioner. Det er specificeret i ISO/IEC TR 24731-1 og kendt som "Grænsekontrolgrænseflader (bilag K)" i C11. Nogle eksempler på funktionsnavne er strcpy_s (), memcpy_s (), printf_s (). Dette bibliotek blev udgivet sammen med Open Watcom 1.5 i april 2006.

Se også

Referencer

eksterne links

Åbn Watcom