왓콤 C/C++

왓콤 C/C++(Watcom C/C++, 현재는 오픈 왓콤 C/C++)은 왓콤 국제 기업의 C, C++, Fortran 프로그래밍 언어용 통합 개발 환경 (IDE)제품이다. 왓콤 C/C++은  단종될 때까지 상업적인 제품이었으며, 이후에는 오픈 왓콤 C/C++이라는 이름으로 프리웨어로 출시되었다. x86, IA-32, x86-64 호환하는 프로세서를 기반으로 하는 MS-DOS, OS/2, 윈도우, 리눅스 운영 체제용 코드를 개발하고 디버깅하기 위한 도구를 제공한다.

역사
사이베이스에서는 더 이상 판매하지는 않지만, 왓콤 C/C ++ 컴파일러와 왓콤 포트란 컴파일러는 오픈 왓콤 꾸러미로 무료로 제공된다.

2005년 12월의 오픈 왓콤 C/C++ 1.4 버전 출시판은 NT 또는 OS/2 호스트 플랫폼에서 지원되는 리눅스 x86을 실험 대상으로 도입했다. 버려진 QNX 버전에 대한 코드가 있지만 컴파일에 필요한 라이브러리를 오픈 소스로 공개 할 수 없다.

안정화 버전 1.9는 2010년 6월 출시되었다.

64 비트 호스트 (윈도우즈 및 리눅스), 내장 텍스트 편집기, 2 단계 구축 체제 및 긴 파일 이름 (LFN)을 지원하는 도스 버전을 지원하는 분기 버전 2.0 베타가 출시되었다.

 출시 이력 
오픈 왓콤 위키에는 포괄적인 기록이 있다.

 날짜  제품명  참고 1984  S/370용 워털루 C  1985   현재 코드 생성기 코드베이스 작업 시작됨. 1988  Watcom C 6.0  도스 호스트 및 대상 전용
 디버거 및 전체 런타임 라이브러리 세트가 포함
 당시 다른 컴파일러 보다 우수한 코드 생성됨
 Watcom C 6.5 버전에는 마이크로소프트 그래픽 라이브러리와 유사한 그래픽 라이브러리가 포함 1989  Watcom C 7.0  1989  Watcom C 7.0/386  첫 번째 32 비트 버전, 도스 호스트 및 대상 전용
 Phar Lap DOS 확장자를 지원
 링커 나 디버거와 함께 제공되지 않음 1990  Watcom C 8.0  1990  Watcom C 8.0/386  링커, 사서, 디버거, 프로파일러가 추가됨 1991  Watcom C 8.5  1991  Watcom C 8.5/386  DOS/4GW와 함께 제공됨
 윈도우즈 3.0 지원함(Win386 확장자)
 유니코드 지원
 OS/2 호스트 실행 파일 추가됨 1992  Watcom C 9.0  1992  Watcom C 9.0/386  OS/2 2.0 호스트와 대상 지원
 486 최적화
 기반 포인터 지원 Watcom C 9.01/386  윈도우즈 3.1 지원 1993  Watcom C/C++ 9.5  1993  Watcom C/C++ 9.5/386  C++ 컴파일러가 추가됨
 펜티엄 최적화
 윈도우즈 NT 호스트와 대상을 지원 1994  Watcom C/C++ 10.0  MFC 포함됨
 전처리된 헤더 지원
 16 비트와 32 비트 도구가 한 꾸러미로 합쳐짐
 디버거를 다시 설계함
 C++ 클래스 브라우저를 추가함
 윈도우즈 자원 편집기 추가됨
 윈도우즈 및 OS/2용 그래픽 IDE 1995  Watcom C/C++ 10.5  OS/2와 Win32에서 기본 C++ 예외처리
 Windows 95 및 NT 3.5 지원
 TCP/IP 원격 디버깅 1996  Watcom C/C++ 10.6  C에서 구조화된 예외처리
 Microsoft 컴파일러와의 호환성 향상됨 1997  Watcom C/C++ 11.0  C++ 컴파일러에서 네임스페이스, RTTI, 새로운 형식의 캐스트를 지원
 64 비트 정수형 지원
 라이브러리의 멀티바이트 문자 지원
 증분 링크 지원
 링커와 사서에서 COFF 와 ELF 목적 파일 지원
 Microsoft 유사 도구 추가
 DLL 이 더나은 IDE 통합용 도구를 기반으로함 1998  Watcom C/C++ 11.0B  1999   사이베이스가 Watcom C/C++ 11.0 용 수명종료를 통지 2000   사이베이스가 왓콤 도구의 오픈 소스화를 발표 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  현재의 공식 버전 2015-04-02  Open Watcom 2.0 Beta  깃허브 V2 분기판이다. 오픈 왓콤이 64 비트 호스트 (윈도우즈 및 리눅스), 자원 컴파일러 및 자원 편집기 지원 WIN64 실행 파일, 내장 텍스트 편집기, 2 단계 빌드 시스템, 도구의 도스 버전은 긴 파일 이름 (LFN), 다양한 수정 사항을 지원한다.List of main differences of v1.9 to v2.0 Beta.

허가서
오픈 소스 이니셔티브는 오픈 소스로 허가서를 승인했지만 데비안, 페도라 및 자유 소프트웨어 재단은 "해당 소프트웨어를 "배포"할 때마다 소스 코드를 공개적으로 게시해야 하며 "배포"에는 많은 종류의 비공개 사용이 포함되도록 정의되어있다."

설계
컴파일러는 도스 (MS-DOS, FreeDOS), OS/2, 윈도우즈, 리눅스 운영체제에서 작동하고 실행 가능 코드를 생성 할 수 있다. Novell NetWare용 NLM 대상도 지원한다. x86, PowerPC및 기타 프로세서에서 실행되는 리눅스 및 현대의 BSD (예: FreeBSD) 운영 체제로 대상을 확장하는 작업이 진행 중이다.

이 코드는 이식성이 있으며 GCC 또는 LCC와 같은 다른 많은 오픈 소스 컴파일러 프로젝트와 마찬가지로 컴파일러 백엔드 (코드 생성기)는 대상을 다시 지정할 수 있다.

사용
1990년대 중반에 둠,History - Open Watcom . OpenWatcom.com wiki. 디센트, 듀크 뉴켐 3D,, 와 라이즈 오브 더 트라이어드와 같은 기술적으로 야심적인 MS-DOS 컴퓨터 게임 중 일부는 왓콤 컴파일러 와 DOS/4GW 보호 모드 확장자를 사용하는 ROTT와 같은 왓콤 C/C++를 사용하여 제작되었다.

2015년에 복고풍 도시 난동을 MS-DOS로 이식하는 데 사용되었다.

바이오스를 컴파일 하기 위해 버추얼 박스가 사용된다.

변형
깃허브에는 오픈 왓콤 V2의 비공식 포크가 있다. 16 비트 도스 CRT 라이브러리 시작의 변형이 WASM으로 작성되었다.

 호환성 
오픈 왓콤의 구문은 마이크로소프트것과 볼랜드것과 같은 다른 컴파일러가 도입한 여러 가지 규칙을 지원한다. 예를 들어 "asm"태그의 앞에 오는 밑줄의 수와 관련된 다른 규칙을 포함한다. 표준 호환 C 또는 C++가 아닌 다른 컴파일러 용으로 작성된 코드는 종종 Watcom 컴파일러로 컴파일된다.

컴파일러는 C89/C90 표준을 기본적으로 지원한다.

오픈 왓콤은 C99 표준과의 부분 호환성을 지원한다. 가장 일반적으로 사용되는 표준 부분을 구현한다. 그러나 문서화되지 않은 명령 줄 스위치 "-za99"를 통해서만 사용할 수 있다. 3 가지 C99 기능은 pre-v1.0 : C ++ 스타일 주석 (//), 유연한 배열 멤버, 열거 형 선언에 허용되는 후행 쉼표로 C90 확장으로 번들되었다.

컴파일러는 현재 새로운 주요 C11 기능을 지원하지 않지만, C 라이브러리에는 "Safe C"기능이 포함되어 있다. 이는 C11의 "경계 검사 인터페이스 (Annex K)"로 알려진 ISO/IEC TR 24731-1ISO/IEC TR 24731-1; Extension to the C Library, Part 1: Bounds-checking interfaces.WG14 N1969 ? "Updated Field Experience With Annex K ? Bounds Checking Interfaces", Carlos O'Donell, Martin Sebor에 명시되어있다. 일부 함수 이름 예제는 strcpy_s(), memcpy_s(), printf_s()이다.Open Watcom Safer C Library 이 라이브러리는 2006년 4월에 오픈 왓콤 1.5와 함께 출시되었다.

 참고 사항 
 오픈 왓콤 어셈블러

 각주 

 외부 링크 
 , 공식 사이트, ()
 오픈 왓콤 V1.9 실행파일 내려받기

 오픈 왓콤 V2 분기판 실행파일 내려받기



분류:C++ 컴파일러
분류:C 컴파일러