From: paul-ml AT is DOT lg DOT ua (Paul Sokolovsky) Newsgroups: comp.os.msdos.djgpp Subject: Re: [ANN] Announcing PW32 - the DJGPP 'port' to Win32 Date: Thu, 09 Mar 2000 16:25:00 GMT Organization: Severodonetsk-InterNetNews site Lines: 71 Message-ID: <38c7c348.31050147@is> References: <38c41ffa DOT 4897862 AT is> <8A955594CEAFFF78 DOT 6A7848CF9050913A DOT 84D076C00D7F586E AT lp DOT airnews DOT net> NNTP-Posting-Host: is.lg.ua X-Trace: hell.sed.lg.ua 952619393 18234 62.244.58.43 (9 Mar 2000 16:29:53 GMT) X-Complaints-To: usenet AT hell DOT sed DOT lg DOT ua NNTP-Posting-Date: 9 Mar 2000 16:29:53 GMT X-Newsreader: Forte Free Agent 1.11/32.235 X-NNTP-Posting-Host: localhost To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com On Tue, 07 Mar 2000 08:38:02 -0500, Rodeo Red wrote: >Could someone please translate this into Newbie ? I'm totally lost >trying to read this. Basically I'm wondering if this is a library for >making windows programs Or does it make non windows programs which run >on more up to date windows platforms or something like that ? I went to >the website and its all in early post neo colonial greek. Well, I didn't think that that description can be so confusing. Even after words that were already said, I'd like to comment some points. (I was suggetsted by DJ to post announcement here, so I hope it's bearable). Yes, POSIX is offered by many Unix system, but that's somewhat upside-down view. The POSIX itself is very attemp to write de jure how decent Unix system organized and functions. Of course, this means compromise between different flavors (however, more came from System V) and also some new features no widely in available in implementations as of time of stanadard acceptance (1986 imho). So, when we say 'POSIX' we ultimately mean 'Unix'. But why 'POSIX', after all? Because scope of 'POSIX' is wider. BeOS is of course not Unix, but it's for sure POSIX system, since it offers comprehensive POSIX API. Ditto NT as it comes from Microsoft, since it has POSIX execution subsystem, thogh criplled. DJGPP offers wonderful (== complete up to system's limits and efficient) POSIX environment for MS DOS. CygWin unifies 95&NT by offering solution which almost runs on first and quite nice runs on second. I try to do something like that, but what to prove that even 95 can be enough full-fledged and efficient POSIX system. Well, by 'POSIX system' I of course mean not system which fully implements its requiements and was assessed to do so, but one that takes POSIX specification as guidelines for its API and operational environment. As was said before, POSIX is not available for free, but as was noted Single Unix Specification v2 aka Unix98 is. It has close relation to POSIX - namely, it is POSIX reminscence (after all, susv2 is free, and POSIX is not ;-) ) and superset. Parody on MS' ways of doing is of course catches an eye, and not only by naming convention, but also by API capacity: while POSIX 1003.2 defines about hundred functions, Unix98+ defined 2000+ ;-) So, unix vendor community fights Microsoft by its own methods. Well, last words is about other POSIX implementation for Win32 and why I did mine. As I mentioned, NT as comes from vendor, has some POSIX subsystem, but it's rumored that it even doesn't have fork(). Some other commercial vendors make POSIX subsystems for NT. They are out of scope both because they are commercial and because NT-specific. David Corn of AT&T/Bell Labs made his POSIX layer, UWIN. It's available for free for personal and research usage and runs on both NT and 95 ("in degraded mode"). It's not open source, though. I myself got used to use DJGPP as both operational and development environment, being happy that it provides support for long names under win95 and used Rainer Schnitker's RSXNTDJ package when it wasn't enough. However, all changed when egcs started to appear and I've got need to use contemprary C++. Firstly, DJGPP egcs releases noticably laged behind official releases; secondly, RSXNTDJ didn't support C++ dll import/export neither was opened to teach it to. So, I was forced to use mingw32 egcs as compiler. I still used all other utilities from djgpp, until I started to hit command line length problem: while DJGPP is able to pass arbitrary command lines with its native programms, djgpp<->win32 still have that stupid 128 chars limit. So, I jumped to CygWin, got many confusion and dissatisfaction, was frightened by its code, etc. So, for my MS thesis I got an idea to develop own POSIX library. Since I was already somewhat experienced, I took some thought of what to start from, and after very little hesiation, I took the best libc out there - one from DJGPP. >> >> http://pw32.sourceforge.net/ >> Paul