Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re: Perl on Windows 10

by syphilis (Bishop)
on Jun 21, 2019 at 03:11 UTC ( #11101643=note: print w/replies, xml ) Need Help??

in reply to Perl on Windows 10


Using Cygwin in the past is fine, but I don't see any need to use it in the present.
My advice would be to start withStrawberry Perl and MSYS2 and look no further until they fail to provide something that you need.
(And if they don't provide something that you need, ask about it. It might simply be that you weren't looking hard enough.)


Replies are listed 'Best First'.
Re^2: Perl on Windows 10
by kcott (Bishop) on Jun 21, 2019 at 04:40 UTC

    Thanks, Rob.

    MSYS2 is new to me. I spent a bit of time reading the doco - it looks like it provides the functionality I'm after.

    I see some (almost) identical packages in both of those. There seems to be quite a few. As an example, Strawberry Perl has binutils-2.32 and MSYS2 has binutils 2.30-1.

    Are there conflicts with any of these? If so, what's the best way to handle them?

    Is there a preferred (or even required) installation order? As I'll be installing multiple versions of Perl, installing MSYS2 first seems right to me but I am completely guessing about that.

    It may be that I just need to read more (or different) doco. I'm happy to follow a link and read if that's easier than a written explanation of any of the above questions.

    — Ken

      As an example, Strawberry Perl has binutils-2.32 and MSYS2 has binutils 2.30-1

      I avoid having a gcc toolchain installed on MSYS2.
      If I need a compiler inside MSYS2's msys2_shell.cmd shell (as is often the case), I use a mingw-w64 port of gcc (eg the one provided by Strawberry Perl).
      I was thinking you'd be using MSYS2 mainly for git, but it's also handy for building C/C++ libraries and for providing 3rd party libraries - eg Gtk2/Gtk3/Gnome, that can be utilized to build the Gtk2/Gtk3/Gnome perl modules on Win32 perls (including Strawberry Perl).

      I've been doing that sort of stuff for so long now that I had quite forgotten that mixing Strawberry Perl and MSYS2 can also be a bit tricky.
      Thanks to xiaoyafeng for reminding me that one has to be a little mindful of how the path is set on those occasions when both MSYS2 and Strawberry Perl environments need to intersect.
      It's hard to come up with a general plan to cover all eventualities, but I think a good start is to set things up so that the default Windows path includes neither MSYS2 nor Strawberry Perl. Then you can just bring in bits and pieces of each, as needed for the particular task.


        I found MSYS2 Wiki (on Github) which seems to cover most of what I'm looking for; particularly with respect to installing the base tools and then adding packages.

        I'll start with the Strawberry Perl installation; then add other components as required. As per xiaoyafeng's post, Strawberry Perl may provide all I need.

        — Ken

Re^2: Perl on Windows 10
by xiaoyafeng (Deacon) on Jun 21, 2019 at 05:54 UTC
    I really don't think putting strawberry perl and msys2 together is a good idea. If you need something provided from msys2 while using perl in windows, most of time, strawberry perl has already provided. If not, you probably need a visual studio or msys2

    I am trying to improve my English skills, if you see a mistake please feel free to reply or /msg me a correction

      G'day xiaoyafeng,

      Thanks for your input. I'm going to start with Strawberry Perl first, then see if I do, in fact, need anything else. See syphilis' post, and my reply to that, for more.

      — Ken

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11101643]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (3)
As of 2020-12-02 09:01 GMT
Find Nodes?
    Voting Booth?
    How often do you use taint mode?

    Results (35 votes). Check out past polls.