From eceace59944a0229db874069b8a802d58a7880c9 Mon Sep 17 00:00:00 2001 From: Leon Timmermans Date: Sun, 7 Feb 2021 01:19:28 +0100 Subject: Update cygwin README file from downstream --- README.cygwin | 73 ++++++++++++----------------------------------------------- 1 file changed, 15 insertions(+), 58 deletions(-) (limited to 'README.cygwin') diff --git a/README.cygwin b/README.cygwin index ab9814a7d3..7baaebab96 100644 --- a/README.cygwin +++ b/README.cygwin @@ -31,7 +31,7 @@ L A recent net or commercial release of Cygwin is required. -At the time this document was last updated, Cygwin 1.7.16 was current. +At the time this document was last updated, Cygwin 3.0.7 was current. =head2 Cygwin Configuration @@ -41,8 +41,8 @@ that Perl builds cleanly. These changes are B required for normal Perl usage. B The binaries that are built will run on all Win32 versions. -They do not depend on your host system (WinXP/Win2K/Win7) or your -Cygwin configuration (binary/text mounts, cvgserver). +They do not depend on your host system or your +Cygwin configuration (binary/text mounts, cygserver). The only dependencies come from hard-coded pathnames like F. However, your host system and Cygwin configuration will affect Perl's runtime behavior (see L). @@ -128,11 +128,10 @@ NOTE: The BerkeleyDB library only completely works on NTFS partitions. A port of SysV IPC is available for Cygwin. NOTE: This has B been extensively tested. In particular, -C is undefined because it fails a Configure test -and on Win9x the I functions seem to hang. It also creates -a compile time dependency because F includes F<> -and F<> (which will be required in the future when compiling -CPAN modules). CURRENTLY NOT SUPPORTED! +C is undefined because it fails a Configure test. It +also creates a compile time dependency because F includes +F<> and F<> (which will be required in the +future when compiling CPAN modules). CURRENTLY NOT SUPPORTED! =item * C<-lutil> @@ -201,42 +200,6 @@ build perl from sources. =back -=head2 Suspicious Warnings on Cygwin - -You may see some messages during Configure that seem suspicious. - -=over 4 - -=item * Win9x and C - -Win9x does not correctly report C with a non-blocking read on a -closed pipe. You will see the following messages: - - But it also returns -1 to signal EOF, so be careful! - WARNING: you can't distinguish between EOF and no data! - - *** WHOA THERE!!! *** - The recommended value for $d_eofnblk on this machine was - "define"! - Keep the recommended value? [y] - -At least for consistency with WinNT, you should keep the recommended -value. - -=item * Compiler/Preprocessor defines - -The following error occurs because of the Cygwin C<#define> of -C<_LONG_DOUBLE>: - - Guessing which symbols your C compiler and preprocessor define... - try.c:: missing binary operator - -This failure does not seem to cause any problems. With older gcc -versions, "parse error" is reported instead of "missing binary -operator". - -=back - =head1 MAKE ON CYGWIN Simply run I and wait: @@ -329,8 +292,8 @@ to portability, more information can be found in the Cygwin documentation. =item * Pathnames Cygwin pathnames are separated by forward (F) slashes, Universal -Naming Codes (F) are also supported Since cygwin-1.7 non-POSIX -pathnames are discouraged. Names may contain all printable +Naming Codes (F) are also supported. Since cygwin-1.7 non-POSIX +pathnames should not be used. Names may contain all printable characters. File names are case insensitive, but case preserving. A pathname that @@ -419,30 +382,24 @@ or: as parent(0x6FB30000) != 0x6FE60000 46 [main] perl 3488 fork: child 3588 - died waiting for dll loading, errno11 -See L +See L It helps if not too many DLLs are loaded in memory so the available address space is larger, e.g. stopping the MS Internet Explorer might help. -Use the perlrebase or rebase utilities to resolve the conflicting dll addresses. ++Use the rebase utilities to resolve the conflicting dll addresses. The rebase package is included in the Cygwin setup. Use F from L to install it. -1. kill all perl processes and run C or - -2. kill all cygwin processes and services, start dash from cmd.exe and run C. +1. kill all perl processes and run + C< -xdev -name \*.dll | /bin/rebase -OT ->> or -=item * C - -On WinNT C can change a file's user and group IDs. On Win9x C -is a no-op, although this is appropriate since there is no security model. +2. kill all cygwin processes and services, and run setup.exe. =item * Miscellaneous File locking using the C command to C is a stub that returns C. -Win9x can not C an open file (although WinNT can). - The Cygwin C implementation has holes (it can not restrict file access by native Win32 programs). @@ -774,4 +731,4 @@ Jerry D. Hedden . =head1 HISTORY -Last updated: 2012-02-08 +Last updated: 2019-11-14 -- cgit v1.2.1