PW32 the Posix-over-Win32 layer / News: Recent posts

0.7.1: Bugfix Release

PW32 0.7.1 has been released, as a bugfix release for 0.7.0. It appeared that 0.7.0 was released with broken pw32 dll, not suitable for running any 0.7 package. Unfortunately, it took some time to figure out the bug and release this new version, because I had correct development build installed locally and because I spent most part of summer studying and on vacation in the other city. I apologize to all users who mailed me and who didn't get response in time. Newly released version fixes this bug and also includes the core dll from 0.6 version, to ease installing and usage of PW32, as not all packages were upgraded for 0.7 yet.... read more

Posted by Paul Sokolovsky 2001-08-03

PW32 0.7.0 released

New stable release of PW32, almost a year after previous release, is available.

PW32 is a library (compatibility layer) which offers POSIX interface on top of OSes of Win32 family (both Win9x and NT/2000). Unlike other porting layers available, PW32 was specifically designed with efficiency in mind and distributed under the terms of LGPL. Comprehensive set of GNU software packages built with PW32 also provided.... read more

Posted by Paul Sokolovsky 2001-05-11

Socket subsystem is under development

For the need of Amanda-win32 project (, socket subsystem is under development for some time now. I just finished successful build of wget, and moving on with cleaning it. It should be available in the next release, which likely to appear soon.

Posted by Paul Sokolovsky 2001-02-19

PW32 assigned GNU architecture triplet

PW32 has been assigned official GNU target alias, it is 'pw32' and triplet - it is 'i386-unknown-pw32'. New config.guess and config.sub files have it included.

Posted by Paul Sokolovsky 2000-11-14

ash is updated, but deprecated

It is big surprise for me that people use ash when there's bash available! I even lagged with updating ash for 0.6.0, but download counts of previous version consistently increased. %)

So, I have updated ash, but would like to make it clear: ash is NOT recommended to be used as script interpreter shell. Just to tell a story, ash was first program ported for PW32, just because sh is an important utility and I thought porting ash would be much easier than bloated bash. Now, looking back, I may say I was wrong. Ash is amazing example of classic "Unix" (versus POSIX) app - it is written to exploit knowledge of particular sustems' design traits, instead of using portable typedefs and macros. So its porting wasn't easy. But of course, it was a wonderful testbed for PW32!... read more

Posted by Paul Sokolovsky 2000-08-09

PW32 milestone: self-sufficient developmental GNU/Win32 dist

PW32, an efficient POSIX subset implementation atop of Win32 API with its 0.6.0 release has reached status of GNU/Win32 distribution containing all common tools required for C application development/porting.

PW32 is an implementation of the (subset of) POSIX/Unix API for Win32
systems. Its main concerns are efficiency and full platform coverage,
including adequate support for low-end Win9x systems. PW32 is based
on DJGPP's runtime library by DJ Delorie. PW32 core is licensed under LGPL. ... read more

Posted by Paul Sokolovsky 2000-08-08

[SourceForge] One-step Trove querying

The Trove categorizing scheme, adopted by SourceForge, is very powerful device and indeed big leap forward comparing to classical Freshmeat/RPM categorization. However, to use its full power, sophisticated, but interface-easy searching/querying solution should exist. Current approach - incrementally putting constraints may be ok for browsing, but gets too cumbersome when you want to do plain searching. So, as an experiment, I made alternative interface to SF Trove engine, which uses standard for multi-category databases technique: presents entire category tree and allows user to select required criteria on it. Unfortunately, I must admit that it didn't work as well as I expected: even with not fully traversed category tree it's quite big and selecting criteria on it is quite distracting. Traditionally, this problem solved by collapsable tree widgets, but it's not so easy to do it in web. ... read more

Posted by Paul Sokolovsky 2000-07-17

New package: automake

This is release is based on automake snapshot from official CVS repository. As recommended, please do not redistribute this snapshot widely (since it may contain bugs) and be prepared to them yourself. Having said that, CVS automake has many nice things that were not available before.

Posted by Paul Sokolovsky 2000-07-16

New package: perl-bin

Yes, the great Perl, is finally here. Version 5.005_03, I didn't dare to touch 5.6 yet. Well, it's enough to run automake.

Posted by Paul Sokolovsky 2000-07-16

New package: which-bin

GNU which, utility to find full path of the executable, available at version 2.11.

Posted by Paul Sokolovsky 2000-07-16

PW32 0.6.0 released

WARNING: PW32 0.6.0 breaks binary compatibility with 0.5.x, so you need to recompile all packages for this version. During next few days, all precompiled packages will be updated. For now, do not overwrite your existing 0.5.x installation!

PW32 the Posix-over-Win32 version 0.6.0 has been released.

PW32 is an implementation of the (subset of) POSIX/Unix API for Win32
systems. Its main concerns are efficiency and full platform coverage,
including adequate support for low-end Win9x systems. PW32 is based
on DJGPP's runtime library by DJ Delorie. PW32 is licensed under LGPL. ... read more

Posted by Paul Sokolovsky 2000-06-22

Please use latest DLL snapshot!

As many other projects, PW32 offers interim releases of core components between full releases. But unlike other projects, these snapshots are not for testing, but rather essential bugfix releases. Any packages released after particular DLL snashot relies on it. So, please alsways use latest snapshot. It is unlikely break things thanks to the resonably modular design and locality of changes. Anyway, it's good idea to keep several snapshots and check some older one before reporting bug.

Posted by Paul Sokolovsky 2000-06-09

New package: gawk-bin

PW32 package for GNU gawk released, with paches for dos text files. The verison is the latest, 3.0.4.

Posted by Paul Sokolovsky 2000-05-29

New package: flex-bin

GNU flex 2.5.4a released, patched for \\r\\n line-endings.

Posted by Paul Sokolovsky 2000-05-28

New package: bison-bin

Plain vanilla GNU bison 1.28, patched to eat dos text files. This package is first examaple of new, and I hope, final, packaging scheme.

Posted by Paul Sokolovsky 2000-05-27

New package: bash-bin

Yes, finally here - the GNU bash 2.03 (per-latest). Current release built with --disable-readline (no termios) and #undef BUFFERED_INPUT (to allow it eat \\r\\n files with little patching). Well, at least it's possible to run auto* tools comfortably.

Posted by Paul Sokolovsky 2000-05-09

New package: texinfo-bin

GNU texinfo. Currently, 3.12b. texinfo consists of two programs: makeinfo, to produce info files (devlopment utility) and info, to view them (user utility). Unfortunately, termios subsystem of PW32 is not yet functional enough to suite info, so only makeinfo is available currently.

Posted by Paul Sokolovsky 2000-05-03

New package: findutils-bin

Plain vanilla GNU findutils. It takes somewhat long to do updatedb on slow box ;-)

Posted by Paul Sokolovsky 2000-04-29

New package: gzip-bin

Plain vanilla GNU gzip. While native gzip port
is quite fine, PW32 port is POSIX-correct and work as expected with existing scripts, tar, etc.

Posted by Paul Sokolovsky 2000-04-27

New package: tar-bin

It is plain vanilla GNU tar, 1.12 (pre-latest). With latest pw32.dll snapshot which supports permission and native pw32 gzip have regression testsuite passed.

Posted by Paul Sokolovsky 2000-04-24

PW32 0.5.0 released

Version 0.5.0 fixes many bugs, while remaining ABI-compatible with 0.4.0. Please see ChangeLog for pw32 module.

Posted by Paul Sokolovsky 2000-04-24

New package: procutils-bin

This is adhoc package, stuffed with different process-related utilities ported from different Linux packages.
Currently it includes kill & ps. Since PW32 processes live in the same namespace as native ones, and it uses sensible signal delivering technique, ps shows all processes in the system (process forest (-f option) supported), and kill besides supporting -KILL for any process, also supports -TERM for native GUI processes.

Posted by Paul Sokolovsky 2000-04-24

New package: m4-bin

It is plain vanilla GNU m4, 1.4 (latest). Regression testsuite passed.

Posted by Paul Sokolovsky 2000-04-24

Standard packages are being updated for '\r\n'-friendliness

Well, even though I still think that having correct text files is the only correct solution to this infamous problem (suppose your Linux gcc choked on \r\n-textfile. What you will blame? Linux? gcc? No, that textfile ;-) ), I'm taking steps to make some standard packages more (or fully ;-) ) \r\n-friendly. This changes include (and end with, to be precise) passing "rt" instead of "r" to fopen when opening undoubtly text file, such as script. As you understand, these patches are compatible with the rest of (contemporary) world. I'd even submit them back to packages maintainers, but I'm afraid they will cool down my heat explaining that some old systems don't understand "rt". So, let it stay that way for now.... read more

Posted by Paul Sokolovsky 2000-04-11

/usr is recommended location for 0.4.0 installation

Some utilities (AFAIR, at least diff3 and sdiff) from 0.4.0 distribution are have compiled-in paths for /usr/bin. That means that they won't work if you install PW32 under other directory than /usr. You can:

1. Install it under /usr (recommended way). But don't replace your existing system, if it installed there! PW32 is not yet production system.

2. Recompile packages

3. Just forget until you'll get some problem with it. Then, proceed with 1 or 2.

Posted by Paul Sokolovsky 2000-03-31