[Parrot-users] Building parrot on cygwin
Bruce Gray
bruce.gray at acm.org
Sat Aug 20 18:27:02 UTC 2011
On Aug 19, 2011, at 3:21 AM, Fredrik Rothamel wrote:
> I'm experiencing problems when building parrot on cygwin.
> (All recent cygwin and parrot versions).
By "recent", do you mean Parrot 3.6.0, 3.7.0, or a fresh checkout from
Git?
Did you append anything to the command-line when you ran `perl
Configure.pl`?
> I know this is a cygwin problem and not a bug in parrot's makefiles
> but I would like to know if anyone has managed to build successfully
> on cygwin
> and if there are any known workarounds.
I remember that Parrot 3.6.0 built and tested with 0 errors on Windows
7, but I do not know if it was 32 or 64-bit, or via Cygwin or just
Mingw.
I *believe* that the last release (3.7.0) of Parrot builds OK on Cygwin.
I *know* that Parrot builds correctly in the following environment,
because I installed a fresh Cygwin and built Parrot yesterday, just to
examine this problem.
> Perl 5.10.1
> GCC 3.4.4
> Cygwin 1.7.9
> Windows 7 Enterprise SP1 64-bit
My environment:
Parrot: commit 865c88149b0ad02d8a12bc2f5b3ba4a0ef75955b Date: Thu
Aug 18 15:47:22 2011 +0200
OS: Windows 2000 SP4 (32-bit)
Perl: This is perl, v5.10.1 (*) built for i686-cygwin-thread-
multi-64int
GCC: gcc (GCC) 4.3.4 20090804 (release) 1
Cygwin: Whatever was current yesterday (1.7.9?)
Parrot built without a problem, and passed all but 3 tests (which were
due to the age of Win2K relative to things like IPv6).
I tried to build with GCC 3.4.x, but could not even get Configure.pl
to complete.
> Tail from makelog:
--snip--
> ./pbc_to_exe.exe parrot_nci_thunk_gen.pbc
> gcc-3 -o parrot_nci_thunk_gen.o -I"/home/fredrik/src/parrot/include"
> -DHASATTRIBUTE_CONST -DHASATTRIBUTE_DEPRECATED -
> DHASATTRIBUTE_MALLOC -DHASATTRIBUTE_NONNULL -
> DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE -DHASATTRIBUTE_UNUSED -
> DHASATTRIBUTE_WARN_UNUSED_RESULT -DHASATTRIBUTE_HOT -
> DHASATTRIBUTE_COLD -DHAS_GETTEXT -c parrot_nci_thunk_gen.c
> 0 [main] pbc_to_exe 6544 exception::handle: Exception:
> STATUS_ACCESS_VIOLATION
> 668 [main] pbc_to_exe 6544 open_stackdumpfile: Dumping stack trace
> to pbc_to_exe.exe.stackdump
> 0 [main] pbc_to_exe 6748 exception::handle: Exception:
> STATUS_ACCESS_VIOLATION
> 640 [main] pbc_to_exe 6748 open_stackdumpfile: Dumping stack trace
> to pbc_to_exe.exe.stackdump
> 0 [main] pbc_to_exe 7916 exception::handle: Exception:
> STATUS_ACCESS_VIOLATION
> 643 [main] pbc_to_exe 7916 open_stackdumpfile: Dumping stack trace
> to pbc_to_exe.exe.stackdump
> 0 [main] pbc_to_exe 2476 child_copy: linked dll data write copy
> failed, 0x1CE000..0x1D25C4, done 0, windows pid 6460, Win32 error 487
> Can't spawn child process
> current instr.: 'compile_file' pc 1138 (tools/dev/pbc_to_exe.pir:716)
--snip--
My thoughts:
1. Try installing these packages into Cygwin:
gcc4
gcc4-core
gcc4-g++
2. Could you have run out of disk space at some point during the
build? This has happened to me several times over the years, causing
widely differing errors.
3. Parrot is under-smoked on all the 64-bit Windows environments,
probably due to a lack of developers on x86-64. Now that an end user
has expressed both interest and frustration, we have more reason to
focus on that shortcoming. Please bear with us while we muster our
resources.
--
Hope this helps,
Bruce Gray (Util on IRC)
More information about the Parrot-users
mailing list