It took a while to track this down, but the issue is in ncurses' internal mechanisms for installing man pages. Basically, it's too clever for its own good.
Simple packages do this: I have man page. I put man page in mandir. The end. /usr/share/man/man1/foo.1 Sometimes, they might have aliases implemented via symlinks, so that 'man bar' gets you the same text as 'man foo': /usr/share/man/man1/foo.1 /usr/share/man/man1/bar.1 -> foo.1 cygport comes along and looks for symlinks in the mandir, figures out what the target is, removes the symlink and replaces it with a file with content: .so foo.1 Then, cygport gzips all the files, leaving /usr/share/man/man1/foo.1.gz /usr/share/man/man1/bar.1.gz (not a symlink) This works fine. ncurses tries to do something similar, except it parses the man pages themselves for all entries in the NAME section, and creates the stub files (.so target) for each of them manually. AND optionally gzips, compresses, nroffs, and tbls them, installing each to different hierarchies under /usr/share/man, depending on 27 different configure arguments. It got a little confused. (What's odd is I didn't specify any of those 27 configure arguments; I just wanted it to do the same thing I always do: --with-manpage-symlinks (e.g. don't monkey around with .so files; just use symlinks [and I'll let cygport do the heavy lifting]). This worked in 5.5...but not, apparently, 5.7. It will be a while until I get around to respining ncurses AGAIN, so in the meantime, this should fix it: #!/bin/sh find /usr/share/man -type f -name "*.gz" |\ xargs file | grep 'ASCII troff' | awk -F: '{print $1}' |\ while read F ; do B=${F%%.gz} mv ${F} ${B} gzip ${B} done -- Chuck -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/