Ticket #1276 (closed bug: invalid)

Opened 5 years ago

Last modified 5 years ago

Parrot does't build on Win32 with MSVC

Reported by: whiteknight Owned by:
Priority: blocker Milestone: 1.8
Component: build Version: 1.7.0
Severity: release Keywords: msvc
Cc: Language:
Patch status: Platform: win32

Description

The build fails on win32 with msvc (cl version 15.0) with the following error:

NMAKE : fatal error U1095: expanded command line 'ar -out:blib\lib\parrot ...' Too long

The command is pretty long since it includes all the .obj files from src/* and subdirectories. However, there's a bigger problem too: msvc doesn't have an "ar.exe" program to run. That appears to be a GNU-only utility.

So this ticket has two parts:

  • How can we shrink the size of that commandline?
  • What is the equivalent program for ar.exe in microsoft land?

Change History

Changed 5 years ago by whiteknight

  • status changed from new to closed
  • resolution set to invalid

This issue is a problem with taking too much Parrot configuration information from Perl5's defaults. The problem was me trying to use Strawberry Perl with MSVC, instead of using the MinGW compiler that came with strawberry perl. Too many things were defaulting to strawberry's toolchain, which doesn't jive with MSVC very well.

I've found that windows builds fine with:

  • MSVC and ActivePerl
  • Strawberry Perl and it's accompanying MinGW compiler suite.

Mixing and matching doesn't work (but it's not a big deal).

Note: See TracTickets for help on using tickets.