https://my.oschina.net/GIIoOS/blog/126701

WATCOM的历史可以追溯到1965年 加拿大的学生Waterloo的团队开发了叫WATFOR的Fortran编译器,运行在IBM 7040平台,基于WSL语言。

20世纪80年代后期用C重写,开始支持C,1988年推出PC版 WATCOM C++ 6.0 能够产生优于其他编译器的代码,可由于多个平台 如 DOS,Windows,OS/2 ,Windows NT。很多游戏 包括 DOOM,Descent,Duke Nukem 3D。还有很多软件
Partition Magic at least up to version 8.0 (DOS components),
Sophos AntiVirus for Dos, OS/2, Window
操作系统:QNX4 Real-Time OS (both 16-bit and 32-bit support)
WATCOM的没落在《Borland传奇》(作者李维)有提及,也不多说。
OpenWATCOM目前稳定版本是1.9,svn构建版本任然处于 2.0Beta1,OW的源代码基于Preforce的解决方案,因为Preforce为OW提供了支持,但是cmeerw.net提供了svn的浏览。不过很遗憾的告诉你,svn的更新并不是很及时。在github上有OpenWATCOM的fork,如https://github.com/open-watcom/open-watcom-v2,值得忠告的是,这些未必是受官方支持的。你可以下载每日构建源代码:OW_daily.tar.bz2,在Windows x64位系统上,构建OW将不能完全成功 但386的组件还是可以构建成功,Windows x64不能运行16位程序。当然你可以看ReadMe文档,只构建OS-NT。构建过程比较简单下载OW1.9 安装好后 运行临时批处理环境脚本跳转到源代码目录:build rel2 ;这样既可。
OW编译的程序体积小运行效率与VC接近,优于GCC(Mingw/cygwin)。有完整的Win32 API。OW的C++标准库OWSTL正在大修以支持C++11.
OW与VC++是高度兼容的 存在cl.exe link.exe rc.exe make.exe lib.exe 等和VC一样的名称的工具,目前能支持的有Win16.Win32,DOS,OS/2,在OW的计划中,预计在OW2正式版是支持AMD64,以及ARMv7,AMD64汇编由JWASM(网址:http://www.japheth.de/ 发展而来,可以用VC++编译成64位程序。)链接器JWlink,调试器CDBA,这些工具都与MS的工具高度兼容。CDBA是汇编写的。
值得注意的是如果安装有VS的计算机,在配置环境变量时,尽量保证使用临时环境变量,即通过批处理脚本实现一个暂时的环境变量。
OW除了支持C/C++ 对Fortran的支持也是比较好的。
OW更新周期为6~12个月 上次更新为2010年6月 OW2的技术问题还有很多正在解决,所以迟迟未更新,想比clang,OW没有大公司支持,并且社区势单力薄,参与人数少。这是OW难以发展的原因。
好的开源项目得发展起来 特别是软件中的基础设施--编译器。还是祝愿OW能够发展起来。
Open WATCOM 项目地址:OpenWATCOM.org
如果你使用百度来搜索WATCOM,或许百度会告诉你wacom,如果要了解更多请用Google搜索。
 
 
 
 
 
 
参考URL:
https://baike.baidu.com/item/Watcom%20c/7765251?fr=aladdin
http://www.openwatcom.org/
http://www.openwatcom.org/download.php
 
https://sourceforge.net/projects/openwatcomqnx4/
https://sourceforge.net/projects/virtualdub/
https://sourceforge.net/projects/openwatcom
https://sourceforge.net/projects/openwatcom/files/current-build/
 
https://github.com/open-watcom
https://github.com/qemu
https://github.com/Xilinx
 
https://github.com/didier13150/kvirtual
https://github.com/tobimensch/aqemu
https://github.com/Dovgalyuk/QemuGUI
 
https://github.com/mesonbuild/meson
https://github.com/mesonbuild
 
https://github.com/Dovgalyuk/PicTetris
https://github.com/Dovgalyuk/appstract
https://github.com/Dovgalyuk/DiskExtractor
https://github.com/Dovgalyuk/qemu
https://github.com/Dovgalyuk/ApogeyROMDisk
https://github.com/Dovgalyuk/SecurityFlaws
https://github.com/Dovgalyuk/BackspaceInvaders
https://github.com/Dovgalyuk/ArduinoFXMPlayer
https://github.com/Dovgalyuk/AIBattle-disabled-
 
 
http://download.chinaunix.net/download/0004000/3218.shtml
https://www.freepascal.org/
http://www.lazarus-ide.org/
https://www.freepascal.org/download.var
http://www.lazarus-ide.org/index.php?page=downloads
https://sourceforge.net/projects/freepascal/?source=recommended
https://sourceforge.net/projects/lazarus/
https://sourceforge.net/projects/lazarus-ccr/?source=recommended
 
 

Open WATCOM指南 - 哦这样的孤单 你冷若冰霜的更多相关文章

  1. [Git] 1、常用Git命令行总结(一)

    一.GIT CLONE最常用的有如下几个 1.最简单直接的命令:git clone xxx.git 2.如果想clone到指定目录:git clone xxx.git “指定目录” 3.clone时创 ...

  2. 2019 Vue开发指南:你都需要学点啥?

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://dzone.com/articles/vue-development-in-2019 ...

  3. 插画版Kubernetes指南

    原文地址:https://www.cnblogs.com/kouryoushine/articles/8007648.html 是根据一个视频翻译过来的,比较形象 编者按:Matt Butcher 是 ...

  4. 你闺女也能看懂的插画版 Kubernetes 指南

    Matt Butcher是Deis的平台架构师,热爱哲学,咖啡和精雕细琢的代码.有一天女儿走进书房问他什么是Kubernetes,于是就有了这本插画版的Kubernetes指南,讲述了勇敢的Phipp ...

  5. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  6. UE4新手之编程指南

    虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...

  7. JavaScript权威指南 - 对象

    JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...

  8. JavaScript权威指南 - 数组

    JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...

  9. const extern static 终极指南

    const extern static 终极指南 不管是从事哪种语言的开发工作,const extern static 这三个关键字的用法和原理都是我们必须明白的.本文将对此做出非常详细的讲解. co ...

随机推荐

  1. snmpwalk的报文检测

    1.先用nc起一个监听的端口,然后看报文是不是正确的: 注:nc是一个模拟各种网络协议的东西,模拟服务器.客户端等: 2.触发告警,让他发报文: 3.用nc模拟一个服务端,启动一个udp的端口163: ...

  2. Javascript-基础1

    1,变量: name="alex"  #默认是全局变量 var name="eric" #局部变量 2. 写JS代码:---html中写,---临时文件可以写在 ...

  3. 【刷题】洛谷 P3901 数列找不同

    题目描述 现有数列 \(A_1,A_2,\cdots,A_N\) ,Q 个询问 \((L_i,R_i)\) , \(A_{Li} ,A_{Li+1},\cdots,A_{Ri}\) 是否互不相同 输入 ...

  4. [CF785E]Anton and Permutation

    题目大意:有一串数为$1\sim n(n\leqslant2\times10^5)$,$m(m\leqslant5\times10^4)$次询问,每次问交换位置为$l,r$的两个数后数列中逆序对的个数 ...

  5. POJ2724:Purifying Machine——题解

    http://poj.org/problem?id=2724 描述迈克是奶酪工厂的老板.他有2^N个奶酪,每个奶酪都有一个00 ... 0到11 ... 1的二进制数.为了防止他的奶酪免受病毒侵袭,他 ...

  6. 洛谷3800:Power收集——题解

    https://www.luogu.org/problemnew/show/P3800 可以把游戏界面理解成一个N行M列的棋盘,有K个格子上有P点,其价值为val(i,j) 初始灵梦可以选择在第一行的 ...

  7. 爆款PHP面试题

    $a = 3; $b = 6; if ($a = 4 || $b = 4) { $a++; $b++; } echo $a; //输出 1 echo $b; //输出 7 逛鸟哥博客,看评论区有个新手 ...

  8. 洛谷 P4495 [HAOI2018]奇怪的背包 解题报告

    P4495 [HAOI2018]奇怪的背包 题目描述 小\(C\)非常擅长背包问题,他有一个奇怪的背包,这个背包有一个参数\(P\),当他 向这个背包内放入若干个物品后,背包的重量是物品总体积对\(P ...

  9. Nginx漏洞利用与安全加固

    本文主要分为两大部分,第一部分介绍了Nginx的一些常见安全漏洞的形成原因.利用方法,并给出了相应的解决办法;第二部分介绍了Nginx安全加固时需要关注的主要内容. Nginx(发音同engine x ...

  10. XML 树结构,语法规则,元素,属性,验证及其解析

    XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶". 一个 XML 文档实例 XML 文档使用简单的具有自我描述性的语法: <?xml v ...