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

Откройте Watcom C / C ++
Watcom logo.png
Оригинальный автор (ы) Watcom
Разработчики) Sybase , SciTech Software
Первый выпуск 8 января 2003 г . ;
18 лет назад
 ( 2003-01-08 )
Стабильный выпуск
1.9 / 2 июня 2010 г . ;
11 лет назад
 ( 2010-06-02 )
Предварительный выпуск
2.0 / 2 апреля 2015 г . ;
6 лет назад
 ( 2015-04-02 )
Репозиторий github .com / открытый ватком / открытый ватком-v2
Написано в C , C ++
Операционная система DOS , Windows , OS / 2 , Linux
Платформа IA-32 , x86-64
Размер 66–84 МБ
Тип Интегрированная среда разработки
Лицензия Sybase Open Watcom Public License версии 1.0
Веб-сайт OpenWatcom .org

Watcom C / C ++ (в настоящее время Open Watcom C / C ++ ) - это продукт интегрированной среды разработки (IDE) от Watcom International Corporation для языков программирования C , C ++ и Fortran . Watcom C / C ++ был коммерческим продуктом, пока не был снят с производства, а затем выпущен под открытой лицензией Sybase Open Watcom как Open Watcom C / C ++. Он содержит инструменты для разработки и отладки кода для операционных систем DOS , OS / 2 , Windows , Linux , которые основаны на процессорах , совместимых с x86 , IA-32 , x86-64 .

История

Компилятор Watcom C / C ++ и компилятор Watcom Fortran больше не продаются компанией Sybase на коммерческой основе , но теперь доступны бесплатно в виде пакета Open Watcom .

Стабильная версия 1.9 была выпущена в июне 2010 года.

Была выпущена разветвленная бета-версия версии 2.0, которая поддерживает 64-битные хосты (Windows и Linux), встроенный текстовый редактор, двухэтапную систему сборки, а версия DOS поддерживает длинные имена файлов (LFN).

История выпуска

Open Watcom Wiki имеет полную историю.

Дата Продукт Примечания
1984 Waterloo C для S / 370
1985 г.
  • Началась работа над текущей кодовой базой генератора кода
1988 г. Watcom C 6.0
  • Только хост и цель DOS
  • Включен отладчик и полный набор библиотек времени выполнения
  • Сгенерировал лучший код, чем другие компиляторы в то время
  • Watcom C версии 6.5 содержал графическую библиотеку, аналогичную графической библиотеке Microsoft.
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
  • Поставляется с DOS / 4GW
  • Поддерживается Windows 3.0 (расширитель Win386)
  • Поддержка Unicode
  • Добавлены исполняемые файлы, размещенные в OS / 2.
1992 г. Watcom C 9.0
1992 г. Watcom C 9.0 / 386
  • Поддержка хоста OS / 2 2.0 и целевой платформы
  • 486 оптимизаций
  • Поддержка указателей на основе
Watcom C 9.01 / 386
1993 г. Watcom C / C ++ 9.5
1993 г. Watcom C / C ++ 9.5 / 386
1994 г. Watcom C / C ++ 10.0
1995 г. Watcom C / C ++ 10.5
  • Собственная обработка исключений C ++ в OS / 2 и Win32
  • Windows 95 и NT 3.5 поддержка
  • Удаленная отладка TCP / IP
1996 г. Watcom C / C ++ 10.6
1997 I квартал Watcom C / C ++ 11.0
  • Пространство имен , RTTI иподдержка приведения нового стиляв компиляторе C ++
  • Поддержка 64-битных целых чисел
  • Поддержка многобайтовых символов в библиотеках
  • Поддержка дополнительных ссылок
  • Поддержка объектных файлов COFF и ELF в компоновщике и библиотекаре
  • Добавлены инструменты клонирования Microsoft
  • Инструменты на основе DLL для лучшей интеграции IDE
  • Поддержка MMX, включая отладку
  • Оптимизация Pentium Pro, включая прогнозирование ветвлений
  • Поддержка Novell NLM
1998 г. Watcom C / C ++ 11.0B
1999-06-30
2000-08-22
  • Sybase объявляет об открытом исходном коде инструментов Watcom
2001-09-27 Watcom C / C ++ 11.0c бета
2002-12-21 Watcom C / C ++ 11.0c
2003-01-28 Откройте Watcom 1.0
2003-08-12 Откройте Watcom 1.1
2004-01-07 Откройте Watcom 1.2
2004-08-03 Откройте Watcom 1.3
2005-12-14 Откройте Watcom 1.4
2006-04-26 Откройте Watcom 1.5
2006-12-15 Откройте Watcom 1.6
2007-08-18 Откройте Watcom 1.7
2007-10-23 Откройте Watcom 1.7a
2009-02-21 Откройте Watcom 1.8
2010-06-02 Откройте Watcom 1.9
  • Текущая официальная версия
2015-04-02 Открыть бета-версию Watcom 2.0
  • Форк GitHub V2, многочисленные исправления
  • Open Watcom перенесен на 64-битные хосты (Windows и Linux)
  • Компилятор ресурсов и редактор ресурсов поддерживают исполняемые файлы WIN64
  • встроенный текстовый редактор
  • двухфазная система сборки
  • Версия инструментов для DOS поддерживает длинные имена файлов (LFN)

Лицензия

Инициатива Open Source одобрила лицензию в качестве открытого источника , но Debian , Fedora и Фонд свободного программного обеспечения отвергли его , потому что «Он требует , чтобы опубликовать исходный код публично всякий раз , когда вы„Deploy“крытое программное обеспечение, и„Развертывание“определяются включать многие виды личного пользования ".

Дизайн

Компилятор может работать и генерировать исполняемый код для операционных систем DOS , OS / 2 , Windows , Linux . Он также поддерживает цели NLM для Novell NetWare . Продолжается работа по распространению таргетинга на Linux и современные операционные системы BSD (например, FreeBSD ), работающие на x86 , PowerPC и других процессорах.

Код является переносимым и, как и многие другие проекты компиляторов с открытым исходным кодом, такие как GCC или LCC, серверная часть компилятора (генератор кода) может быть перенацелена.

Использует

В середине 1990-х некоторые из наиболее технически амбициозных компьютерных игр DOS, таких как Doom , Descent , Duke Nukem 3D , Rise of the Triad и Tomb Raider, были созданы с использованием Watcom C / C ++ с использованием расширителя защищенного режима DOS / 4GW с Watcom. компилятор.

Он был использован для портирования игры Retro City Rampage на DOS в 2015 году.

Он используется VirtualBox для компиляции BIOS .

Текущая разработка FreeDOS требует, чтобы весь исходный код C был компилирован Open Watcom C.

Open Watcom - рекомендуемый компилятор для разработки приложений и драйверов для операционной системы ArcaOS на базе OS / 2 .

Варианты

На GitHub есть неофициальный форк Open Watcom V2 . Вариант 16bit DOS CRT запуска библиотеки был создан с WASM .

Совместимость

Синтаксис Open Watcom поддерживает многие соглашения, введенные другими компиляторами, такими как Microsoft и Borland , включая различные соглашения, касающиеся (например) количества ведущих подчеркиваний в теге «asm». Код, написанный специально для другого компилятора, а не для стандартного C или C ++, часто будет компилироваться с помощью компилятора Watcom.

По умолчанию компилятор поддерживает стандарты C89 / C90.

Open Watcom поддерживает частичную совместимость со стандартом C99 . Он реализует наиболее часто используемые части стандарта. Однако они включаются только с помощью недокументированного переключателя командной строки «-za99». Три функции C99 были объединены как расширение C90, начиная с версии до версии 1.0: комментарии в стиле C ++ (//), гибкие элементы массива, конечная запятая, разрешенная в объявлении перечисления.

В настоящее время компилятор не поддерживает никаких новых основных функций C11 , хотя библиотека C включает функции «Safe C». Он определен в ISO / IEC TR 24731-1 и известен как «Интерфейсы проверки границ (Приложение K)» в C11. Некоторые примеры имен функций: strcpy_s (), memcpy_s (), printf_s (). Эта библиотека была выпущена вместе с Open Watcom 1.5 в апреле 2006 года.

Смотрите также

использованная литература

внешние ссылки

Откройте Watcom