1 This document is obsolete. Refer to README.cygwin32.
5 Here are a few hints for building perl with cygwin:
7 (1) There have been some problems compiling with the default compiler
8 installed with cygwin-b20.1. If you're reading this file, then you've
9 already applied perl5.005_03-static-patch. Some of the patches in
10 perl5.005_03-static-patch attempt to correct these problems, but it
11 would probably be a good idea to upgrade your compiler to egcs-1.1.1
12 (or better) from Mumit Khan's website --
13 http://www.xraylith.wisc.edu/~khan/software/gnu-win32/
15 (2) To avoid some failures when doing a "make test", use CYGWIN=ntea
16 while testing. However, see the Cygwin FAQ concerning the use of ntea
17 with FAT partitions. The tests that fail are those that deal with file
20 (3) Perl should build without trouble under text mounts or binary
21 mounts. However, some tests ("make test") may fail when using text
22 mounts. The tests that fail are those that involve using tie() to
23 attach a hashtable variable to a file.
25 (4) There have been a few hints that some tests may also fail depending
26 on whether you're building, testing, and/or installing as a normal
27 user, or as a member of the Administrators group (NT only). However,
28 we're not sure about this one yet.
30 (5) When compiling static modules for perl, don't mix modules compiled
31 under text mounts and modules compiled under binary mounts.
33 (6) The sourcefiles in the tarball extract as "-r--r--r--" by default.
34 This may or may not cause problems, depending on your setup. To be safe,
35 I executed "chmod -R +w *".
37 (7) To make life easier, you should download install-cygwin-b20.sh from
38 ftp://ftp.franken.de/pub/win32/develop/gnuwin32/cygwin/
39 porters/Humblet_Pierre_A/
40 and use it as your install "executable." Just follow the instructions
41 that are embedded as comments in that shell script.
43 (8) There were a number of failed operations when installing. These
44 occurred in two cases: first, when trying to create man pages whose
45 names had ":" in them -- i.e. man/man3/Tie::Array.3, and second,
46 when copying the pod files from SRCDIR/pod/*.pod to
47 /usr/local/lib/perl5/perl5.00503/pod/. I'm not sure why, but I just
48 completed that operation by hand afterwards.
51 ****************************************************
53 I built and tested as a normal user (not Administrator and not a member
54 of the Administrators group). However, I had to
55 'chown -R cwilson /usr/local/*' in order to avoid various NTisms.
56 (Previously, my /usr/local tree was owned by the Administrators GROUP,
57 and since I was building as a normal user, I couldn't install
58 completely. Why didn't I just switch to the Administrator account to
59 install? Well, that has its own share of problems: basically, the
60 Administrator couldn't write to those directories either - they were
61 owned by the Admin group, not the Admin user. And the permissions were
62 -rw-r--r-- (or -r--r--r--), so group members weren't allowed write
68 Failed 4 test scripts out of 190, 92.63% okay.
69 u=2.143 s=4.897 cu=120.165 cs=159.697 scripts=180 tests=6430
71 RESULTS: ./perl harness
72 -----------------------
73 most things were "foo/bar............ok" with the following exceptions:
76 base/rs.............ok, 4/14 subtests skipped
77 op/groups...........skipping test on this platform
78 op/magic............FAILED test 23
79 Failed 1/35 tests, 97.14% okay (-4 skipped tests: 30 okay,
81 op/stat.............ls: /dev: No such file or directory
83 Failed 2/58 tests, 96.55% okay
84 op/taint............FAILED tests 1, 3, 31
85 Failed 3/149 tests, 97.99% okay (-12 skipped tests: 134 okay,
87 (Also got the following popup message four times - "The dynamic
89 library cygwin1.dll could not be found in the specified path
90 F:\cygnus\cygwin-b20\usr\local\src\perl5.005_03\t;.;
91 E:\WINNT\System32;E:\WINNT\system;E:\WINNT;..")
92 lib/findbin.........FAILED test 1
93 Failed 1/1 tests, 0.00% okay
94 lib/db-btree........skipping test on this platform
95 lib/db-hash.........skipping test on this platform
96 lib/db-recno........skipping test on this platform
97 lib/gdbm............skipping test on this platform
98 lib/ipc_sysv........skipping test on this platform
99 lib/ndbm............skipping test on this platform
100 lib/odbm............skipping test on this platform
101 lib/posix...........skipping test on this platform
102 lib/thread..........skipping test on this platform
104 Failed Test Status Wstat Total Fail Failed List of failed
105 ------------------------------------------------------------------------
107 lib/findbin.t 1 1 100.00% 1
108 op/magic.t 35 1 2.86% 23
109 op/stat.t 58 2 3.45% 4, 35
110 op/taint.t 149 3 2.01% 1, 3, 31
111 10 tests skipped, plus 20 subtests skipped.
112 Failed 4/190 test scripts, 97.89% okay. 7/6430 subtests failed, 99.89%