diff options
author | Leon Timmermans <fawaka@gmail.com> | 2021-02-07 01:19:28 +0100 |
---|---|---|
committer | Leon Timmermans <fawaka@gmail.com> | 2022-06-14 19:41:17 +0200 |
commit | eceace59944a0229db874069b8a802d58a7880c9 (patch) | |
tree | 3dcd834b7766b4d592e6446e6fceb2b47f81ce88 /README.cygwin | |
parent | f15e478c60445e7053811660fb7e10b6c857569e (diff) | |
download | perl-eceace59944a0229db874069b8a802d58a7880c9.tar.gz |
Update cygwin README file from downstream
Diffstat (limited to 'README.cygwin')
-rw-r--r-- | README.cygwin | 73 |
1 files changed, 15 insertions, 58 deletions
diff --git a/README.cygwin b/README.cygwin index ab9814a7d3..7baaebab96 100644 --- a/README.cygwin +++ b/README.cygwin @@ -31,7 +31,7 @@ L<https://www.cygwin.com/> 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<not> required for normal Perl usage. B<NOTE:> 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</usr/local>. However, your host system and Cygwin configuration will affect Perl's runtime behavior (see L</"TEST">). @@ -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<not> been extensively tested. In particular, -C<d_semctl_semun> is undefined because it fails a Configure test -and on Win9x the I<shm*()> functions seem to hang. It also creates -a compile time dependency because F<perl.h> includes F<<sys/ipc.h>> -and F<<sys/sem.h>> (which will be required in the future when compiling -CPAN modules). CURRENTLY NOT SUPPORTED! +C<d_semctl_semun> is undefined because it fails a Configure test. It +also creates a compile time dependency because F<perl.h> includes +F<<sys/ipc.h>> and F<<sys/sem.h>> (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<d_eofnblk> - -Win9x does not correctly report C<EOF> 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:<line#>: 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<make> 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<//UNC>) are also supported Since cygwin-1.7 non-POSIX -pathnames are discouraged. Names may contain all printable +Naming Codes (F<//UNC>) 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<https://cygwin.com/faq/faq-nochunks.html#faq.using.fixing-fork-failures> +See L<https://cygwin.com/faq/faq.html#faq.using.fixing-fork-failures> 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<setup.exe> from L<https://cygwin.com/install.html> to install it. -1. kill all perl processes and run C<perlrebase> or - -2. kill all cygwin processes and services, start dash from cmd.exe and run C<rebaseall>. +1. kill all perl processes and run + C<</bin/find <dir> -xdev -name \*.dll | /bin/rebase -OT ->> or -=item * C<chown()> - -On WinNT C<chown()> can change a file's user and group IDs. On Win9x C<chown()> -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<F_GETLK> command to C<fcntl()> is a stub that returns C<ENOSYS>. -Win9x can not C<rename()> an open file (although WinNT can). - The Cygwin C<chroot()> implementation has holes (it can not restrict file access by native Win32 programs). @@ -774,4 +731,4 @@ Jerry D. Hedden <jdhedden@cpan.org>. =head1 HISTORY -Last updated: 2012-02-08 +Last updated: 2019-11-14 |