SciTech Software, Inc. today announced that the Open Watcom 1.0 has been released and is now available for download from the OpenWatcom.org website and for purchase on CD from SciTech’s website. Read more for the press release.
“Jointly developed by Sybase, SciTech and a core team of Open Watcom developers, Open Watcom 1.0 is the first new release of the Watcom compilers in over three years. Support for Open Watcom will be handled exclusively through the Open Watcom web site (www.openwatcom.org).
In a single package, Open Watcom provides a comprehensive development environment with the tools, SDK’s, and libraries needed to create powerful 16-and 32- bit applications for popular PC platforms. Combining an integrated development environment (IDE) and a comprehensive set of tools with state-of-the-art compiler technology, Open Watcom C/C++ delivers productivity and performance
“Open Watcom provides one of the most powerful cross platform, cross debugging environments available” said Kendall Bennett, CEO SciTech Software Inc. “The lack of high quality cross development support in other products is what prompted us into pursuing an Open Source version of Watcom to begin with“.
The Open Watcom C/C++ and FORTRAN compilers support powerful remote debugging capabilities right out of the box. Support is included for remote debugging over the serial port, parallel port, TCP/IP for all supported platforms (including DOS!). There are also remote debugging layers for Novell Netware networks (IPX and NetBIOS) as well as remote debugging within virtual DOS machines and more. The best feature of the Open Watcom remote debugging support is the ability to cross compile and debug any target platform from any host platform! You can if you want develop and debug Win32 applications from OS/2 or DOS, and when the Linux port is complete you will be able to build and debug Win32 applications from Linux!
Free OS/2 and Windows SDK’s included!
Thanks to the efforts of the Open Watcom team members, Open Watcom now offers SDK headers and libraries for OS/2, Win16 and Win32. The Win32 SDK headers and libraries are based heavily on the w32api project developed and maintained by the MinGW compiler team.
Free DOS extenders included!
Open Watcom C/C++ and FORTRAN include a number of royalty free and Open Source DOS extenders right out of the box. Thanks to Tenberry Software’s donation, the original DOS/4GW DOS extender from Watcom C/C++ and FORTRAN is included royalty free with the Open Watcom compilers. Also included is the now free CauseWay DOS extender developed by Michael Devore. Both binaries are included as well as complete source code in the source archives. Open Watcom also includes the free PMODE/W and DOS/32A DOS extenders as part of the package.”
Not a bad compiler. Handles both my old DOS and Windows code. THis is great that it’s free. Only down side is that you cannot use alot of the Windows SDK due to legal restrictions. Other than that, four stars.
Not a big issue here, but I do think the IDE needs a cosmetic surgery. It’s looking horribly dated (like a Win3.1 app).
i installed openwatcom rc1(open-watcom-win32-1.0-RC1.exe).
want notice this,
checked it with adaw.., spy.., i found ONE data mine(#$%.exe) in it.(and the mine was removed.)
Does ver 1.0 have same data mine?
and early version have some magic in *.zip? (i mean virus.)
—
i want know current thing for the next time.
That language is still around? Wow.
Rest assured that fortran will be around longer than you will.
Compilers these days include extensive tools and libraries.
Does this one have upto date STL support ?
> Compilers these days include extensive tools and libraries. Does this
> one have upto date STL support ?
*cracks up laughing*
This thing is ancient! You’re lucky it includes support for 32-bit apps! I wouldn’t have paid more than $5 to open-source this thing. The source code is written using C (ick) back when templates were a *new* thing in C++ and targeting both Windows 3.1 and Windows 95 was still on every Windows software developer’s wish list. STL wasn’t created until 1995, and it wasn’t formally added to the language until 1998. OpenWatcom includes its own C++ libraries that have little in common with the actual C++ Standard Library.
What a joke!
My favorite comment in the source code:
Description: WHEN YOU FIGURE OUT WHAT THIS FILE DOES, PLEASE DESCRIBE IT HERE!
Our entire core flight ops system at NWA (WorldFlight) was written in a Fortran 66 variant and was still being actively developed when I left, as was the main Cargo tracking system, and the “new” flight planning system NWA purchased from Jeppesen had significant portions written in Fortran.
The language works well, and (more importantly) it has a ton of well-tested libraries that have withstood the test of time.
i mean comparing Open Watcom compilers with other free (price and/or freedom) compilers (like GNU Compilers Collection,
what the outstanding pros of Open Watcom?
like compilation speed, code optimization, code portability, ANSI C/C++ support, etc etc.
thank you
Some idiot said:
“*cracks up laughing*
This thing is ancient! You’re lucky it includes support for 32-bit apps! I wouldn’t have paid more than $5 to open-source this thing. The source code is written using C (ick) back when templates were a *new* thing in C++ and targeting both Windows 3.1 and Windows 95 was still on every Windows software developer’s wish list. STL wasn’t created until 1995, and it wasn’t formally added to the language until 1998. OpenWatcom includes its own C++ libraries that have little in common with the actual C++ Standard Library.”
Shows just how much this guy has actually investigated the Open Watcom compilers. The C++ compiler is pretty decent (not ANSI C++ yet, but we are working towards that goal), and it *does* support compiling the STLPort package. We just didn’t get enough time to include STLPort in the 1.0 release, but it will be included in the 1.1 release of the compiler.
“My favorite comment in the source code:
Description: WHEN YOU FIGURE OUT WHAT THIS FILE DOES, PLEASE DESCRIBE IT HERE!”
When you have to prepare close to 3 *million* lines of source code for release and need to remove existing copyright headers and replace them with a new one specified by Sybase legal, do you really expect that someone is going to sit down and document what each source code file does? I doubt it! Rather we inserted a single blanket comment (using automatic tools!) into every source file, then as we go through and work on the project we add comments to the source files once we determine what they actually do.
Now, any real criticisms 😉
BTW, can the person who mentioned they find a virus in the package please post more detailed information on the Open Watcom newsgroups? It could be a false alarm (virus checkers do that sometimes), but if not we need to fix it.
bact: i mean comparing Open Watcom compilers with other free (price and/or freedom) compilers (like GNU Compilers Collection, what the outstanding pros of Open Watcom? like compilation speed, code optimization, code portability, ANSI C/C++ support, etc etc.
Uh…none of the above? OpenWatcom makes MSVCPP 6.0 look like a monument to standards compliance, good code generation, and usability. If you want a free Windows development environment, you would be much better off checking out Dev-C++ and Cygwin/Mingw32. If you are willing to pay a bit more for commercial software, Borland, Codewarrior, and Microsoft have academic licensing.
Can anyone see a point to using OpenWatcom (besides being a developer trying to turn it into something useful)?
Kendall Bennett: Some idiot said:
I am getting tired of responding to people who butt into a discussion without understanding its context.
Kendall Bennett: Shows just how much this guy has actually investigated the Open Watcom compilers. The C++ compiler is pretty decent (not ANSI C++ yet, but we are working towards that goal), and it *does* support compiling the STLPort package. We just didn’t get enough time to include STLPort in the 1.0 release, but it will be included in the 1.1 release of the compiler.
In the first place I was reponding to a post by ameasures asking whether OpenWatcom had up-to-date STL support. A C++ implementation requires the standard library; without it, up-to-date STL support truly is a joke, not to mention that it is hard to compile much modern C++ code.
In the second place it is a bad argument to say “but the next version will have X” when we are talking about the current version, e.g.:
null: OpenWatcom’s IDE is pretty bare.
kendall: But that will be fixed in the next version.
null: OpenWatcom is written in C.
kendall: But that will be fixed in the next version.
null: OpenWatcom <insert any other criticism>
kendall: But that will be fixed in the next version.
We are talking about here and now. If something is going to be fixed in the next version, I am happy for you, but saying that it will be fixed does not mean that there is no problem now. The very fact that you will be fixing it implies that it is a problem *now*.
Kendall Bennett: When you have to prepare close to 3 *million* lines of source code for release and need to remove existing copyright headers and replace them with a new one specified by Sybase legal, do you really expect that someone is going to sit down and document what each source code file does? I doubt it! Rather we inserted a single blanket comment (using automatic tools!) into every source file, then as we go through and work on the project we add comments to the source files once we determine what they actually do.
It is still funny.
What’s the portability potential of this? It might make a good compiler for some alternate OS>
gcc is written in C. It’s definately the most portable compiler around, and produces decent code for most of its target architectures.
What’s wrong with C? Most (all?) versions of UNIX are written in C.
Reading comments like many of the ones posted above it suddenly become very clear as to why more companies don’t open src their code – after all if your going to be raked over the coals its nice to be compensated for your efforts (as is the case with a commercial products). However here it would appear that you provide a free service and get slammed at the same time – just an observation.
tris: Reading comments like many of the ones posted above it suddenly become very clear as to why more companies don’t open src their code – after all if your going to be raked over the coals its nice to be compensated for your efforts (as is the case with a commercial products).
<sarcasm>Yeah, I would get depressed, too, if I released old source code and someone said that it was old source code. It would be even worse if someone *asked* about the age of the code. Why, I might even call the guy who gave the truthful answer an idiot! Yeah! Down with truth! Let’s all be more…uh…understanding!</sarcasm>
Seriously now, why does everyone assume that just because the first version is crappy that when they are through with it they will not have something worth using? Look at Mozilla. Netscape 4.7x was doing fairly bad even before development on it was killed. Early versions of Netscape 6.0 were absolutely horrible – I think I had about 16 crashes just trying to install – but now the Mozilla project is quite an accomplishment.
Of for another example look at KDevelop. Early versions were a joke in comparison with Visual C++ – and, I might add, they were far worse than OpenWatcom ever was – but now KDevelop has become a good IDE used by many developers. It just takes time, effort, patience, and a lot of soda. But if someone were to ask me whether I thought that those early versions of KDevelop were better than Visual C++, I would still laugh myself silly.
tris: However here it would appear that you provide a free service and get slammed at the same time – just an observation.
Actually, it is an opinion. An observation is a fact. For example, if you see a car crash into a telephone pole, that is an observation; you really did see the car crash into the telephone pole. On the other hand if you see one person arguing with another and if you immediately make assumptions about which of the two was the “villain,” those assumptions are an opinion. (I would say, “a rather hastily-formed opinion.”)
An anonymous coward named ‘null_pointer_us’ said:
“Uh…none of the above? OpenWatcom makes MSVCPP 6.0 look like a monument to standards compliance, good code generation, and usability.”
Have you actually used the Open Watcom compiler? It produces code as good (if not better in some cases) than MSVC 6.0, and is as up to date as that compiler is in the standards compliance department. Very few compilers yet support the latest ANSI C standard, and very few have yet to reach ANSI C++ compliance either.
“I am getting tired of responding to people who butt into a discussion without understanding its context.”
Sorry, but I fully understand the context of this discussion.
“In the first place I was reponding to a post by ameasures asking whether OpenWatcom had up-to-date STL support. A C++ implementation requires the standard library; without it, up-to-date STL support truly is a joke, not to mention that it is hard to compile much modern C++ code.”
Did you read my post? I said we did not include it in the release because we didn’t have time. If you go to the STLport home page and download the latest code, you can get it compile just fine with Open Watcom. There are few minor patches required, but it compiles and works. We will simply be including the pre-compiled libraries and headers with the next release of the compiler, not fixing the compiler so it can support building STLPort. STLPort has built with the Watcom compiler since version 11.
“null: OpenWatcom’s IDE is pretty bare.
kendall: But that will be fixed in the next version.”
I didn’t mention anything about the IDE. IMHO the Watcom IDE sucks, but that doesn’t bother me because I don’t use it. Then again I don’t use any compiler’s IDE (can’t stand Visual Studio and Borland’s IDE lost the plot years ago). Instead I (like many other developers out there) use a separate IDE/Editor such as SlickEdit (my favorite) or CodeWright etc.
“null: OpenWatcom is written in C.
kendall: But that will be fixed in the next version.”
Eh? Do you know much about compiler design? All compilers I know of are written entirely in C. GNU C is written entirely in C. I don’t think there would be a decent programmer in the world stupid enough to think that re-writing a compiler in C++ would actually be useful!
“We are talking about here and now. If something is going to be fixed in the next version, I am happy for you, but saying that it will be fixed does not mean that there is no problem now. The very fact that you will be fixing it implies that it is a problem *now*.”
You need to do two things:
1. Read my response better next time so you really understand what I am saying
2. Download, install and actually *try* Open Watcom before you start making these statements.
Kendall Bennett: An anonymous coward named ‘null_pointer_us’ said:
Well, at least you are improving. This time you mentioned my screen name.
Kendall Bennett: Have you actually used the Open Watcom compiler? It produces code as good (if not better in some cases) than MSVC 6.0, and is as up to date as that compiler is in the standards compliance department. Very few compilers yet support the latest ANSI C standard, and very few have yet to reach ANSI C++ compliance either.
You completely missed the point. Regarding standards compliance, Visual C++ 6.0 is not a shining example; in fact, it was renowned by the C++ community for years before version 7.0 as being one of the worst compilers on the market in that regard. Visual C++ 7.0 is better and 7.1 is supposed to be *the* most standards compliant compiler when it is introduced. It will even support some features that were standardized five years ago. OpenWatcom has a long way to go, for while you are catching up other compilers will be improving, too. If you will turn your mind back to the beginning of this discussion, you will find that two people asked *specifically* how OpenWatcom compared to other C++ compilers in this respect.
Kendall Bennett: Sorry, but I fully understand the context of this discussion.
No, you have demonstrated that you do not understand the context of this discussion. Let me help you by summarizing the discussion thus far:
1. Someone asked what the state of STL support in OpenWatcom was.
2. I answered by stating that there was no standard library in OpenWatcom.
3. You responded by calling me an idiot and stating that the next version of OpenWatcom would have a standard library.
4. I responded by stating that what the next version would have was irrelevant to the original question which specifically dealt with what the *current* version had.
5. You responded by merely repeating the point that I said was irrelevant.
Obviously, if you had understood the argument, you would have first responded to the idea that what would be in the next version was irrelevant instead of simply repeating what would be in the next version.
Kendall Bennett: Did you read my post? I said we did not include it in the release because we didn’t have time. If you go to the STLport home page and download the latest code, you can get it compile just fine with Open Watcom. There are few minor patches required, but it compiles and works. We will simply be including the pre-compiled libraries and headers with the next release of the compiler, not fixing the compiler so it can support building STLPort. STLPort has built with the Watcom compiler since version 11.
Yes, I read your post. Apparently, you did not understand my post. I said quite clearly that a standards compliant C++ implementation requires both the compiler and the standard library; OpenWatcom 1.0, the version that we are discussing, has one but not the other. The standard library *is* a part of the language just as the grammar *is* a part of the language.
Kendall Bennett: I didn’t mention anything about the IDE. IMHO the Watcom IDE sucks, but that doesn’t bother me because I don’t use it. Then again I don’t use any compiler’s IDE (can’t stand Visual Studio and Borland’s IDE lost the plot years ago). Instead I (like many other developers out there) use a separate IDE/Editor such as SlickEdit (my favorite) or CodeWright etc.
Kendall Bennett: Eh? Do you know much about compiler design? All compilers I know of are written entirely in C. GNU C is written entirely in C. I don’t think there would be a decent programmer in the world stupid enough to think that re-writing a compiler in C++ would actually be useful!
I am not going to bother responding to either comment because they have nothing to do with the discussion. Remember that “e.g.” means that an example follows. In my previous post it indicated a *hypothetical* discussion demonstrating that your “logic” could be used to rationalize the existance of any problem simply because it will be fixed in a later version; ergo, anyone who points out any problem in the current version of the program can be called an idiot, an anonymous coward, or a meanie (which is what tris implied).
Kendall Bennett: You need to do two things:
1. Read my response better next time so you really understand what I am saying
2. Download, install and actually *try* Open Watcom before you start making these statements.
1. DIY.
2. I did download, install, and actually *try* OpenWatcom before I made my first comment.
3. Also, could I trouble you not to begin your next post with a personal attack?
I welcome OpenWatcom compiler for some really simple reasons.
I have an old notebook, not very fast with not much memory, and gcc is damn slow on this.
I have tried many compilers, from LCC to VC6, but I had finally to choose between BC5 ++ and VC 1.52, for HD size reasons.
I own BC 5++, I am against any form of piracy, I used it. But it produces horrible code, slow and memory hungry.
I tried once Watcom C++, and despite the awfull IDE, which can easily be changed, the produced code was well optimised, and suffer less instabilities than VC++ speed-optimised code, which can be totally wrong (from my own experience of awfull and ugly C coder 🙂 ).
So my notebook will revive, my old 486 can now be saved, thanks to the OpenWatcom team.
Don’t take the comments too seriously.
OSNews is slowly turning into Slashdot Jr.
“Actually, it is an opinion. An observation is a fact. For example, if you see a car crash into a telephone pole, that is an observation; you really did see the car crash into the telephone pole. On the other hand if you see one person arguing with another and if you immediately make assumptions about which of the two was the “villain,” those assumptions are an opinion. (I would say, “a rather hastily-formed opinion.”)
I thank you for trying to clarify common definitions but please keep your comments to areas that you understand. To help close this issue I have included accurate definitions of several terms that your posts have raised…
observation: An inference or a judgment that is acquired from or based on observing
opinion: A belief or conclusion held with confidence but not substantiated by positive knowledge or proof
idiot: A foolish or stupid person.
tris: I thank you for trying to clarify common definitions but please keep your comments to areas that you understand. To help close this issue I have included accurate definitions of several terms that your posts have raised…
Surely you must be joking!
tris: observation: An inference or a judgment that is acquired from or based on observing
No, an observation is something that has been observed. In other words it is a fact; it has *actually* happened. The word “observation” is a noun formed from the verb “observe” by adding the common noun suffix “-tion.”
tris: opinion: A belief or conclusion held with confidence but not substantiated by positive knowledge or proof
That definition is close but not completely accurate. An opinion is a belief that has been substantiated by certain facts but not proven. To prove something one must exclude all other possibilities; to substantiate something is merely to add weight to it, and one can do that through circumstantial evidence.
A small example will help to clarify the difference between an observation and an opinion. Let us say for the sake of example that you walk into a room and find a man standing over a dead body and clutching a bloody knife in his hands.
What you have observed is merely the man standing there with the knife in his hands. You have not observed him kill the other person. You may have formed an opinion that the man with the knife is the murderer, and it may be substantiated by the fact that he is clutching a bloody knife, but it is not proof that he is the murderer. Other facts are necessary to prove that he is the murder; specifically, lacking a witness to the killing itself, one would need to find a motive and collaboration of witnesses to convince a jury that there is no other reasonable possibility than that he is the murderer.
Your opinion alone should not be enough to convict the man of murder. There are other reasonable possibilities. Perhaps to the murderer’s dismay, the man holding the knife had accidentally encountered the person just after the stabbing and tried to remove the knife to save the person’s life. Or it is also possible that the man you saw holding the knife had accidentally encountered the person just after the person had died, found the knife lying on the floor, heard a strange noise, and picked the knife up instinctively. Without a thorough investigation and proof an innocent man could be executed.
Likewise your observations are not merely what you have observed but opinions (i.e., providing a free service and getting slammed) that you have formed based on what you really did observe (i.e., the argument).
tris: idiot: A foolish or stupid person.
Yes, I agree with your definition of an idiot; I do not, however, think that it is necessary to open online discussions using that term.
Jim: gcc is written in C. It’s definately the most portable compiler around, and produces decent code for most of its target architectures. What’s wrong with C? Most (all?) versions of UNIX are written in C.
Bleem! was written in x86 assembly language. It’s definitely got the best emulator GUI around, and it has excellent emulation speed for the games that it supports. What’s wrong with x86 assembly language? Most (all?) emulators are written in x86 assembly language.
The only problem here is that the two things – the use of x86 assembly language and GUI quality – are not necessarily related, nor are C and UNIX’s portability. The former is an implementation detail; any of several languages would have worked well including C++ except that UNIX was originally written in C and that C is tradition. The latter is a result of the design of UNIX APIs and the skill of the developers.
As to C’s impecability as a language, it certainly has some problems. C99 implemented what are in my opinion a boatload of misfeatures based on tradition instead of experience and redesign. Examples of this include specifying the exact sizes of the fundamental types in the standard, adding a bunch of poor approximations of C++ standard library classes, and of course the _Bool-esque keywords (how ugly!). This is not to say that C++ has been without its share of misfeatures, but the language is still far more powerful than C for general purpose usage.
The reason why I said “C (ick!)” was that most C++ compilers are written by people who do not use them. These people are prone to making sweeping generalizations about standards compliance whereas if they were actually forced to use the broken tools that they produce, they might be more motivated to fix the problems. If a company makes a bad product and you merely complain to the employees, your complaints will fall on deaf ears, but give the boss a sample of the bad product for his own use, and… 😉