over2sd has asked for the wisdom of the Perl Monks concerning the following question:

I've been doing some GUI programming on Linux using GTK2 (because I'm pretty familiar with it and like the API), but when I tried to install Gtk+ on my MSWin8 box, I ran into problems.

Using CPAN to try to install Gtk2 dies because it can't find/install one of the dependencies, following the instructions in the download from gtk.org got me nowhere (it/I couldn't find one of the programs listed in the instructions), and the installers for GTK I found on the net are all pretty stale.

So, I'm looking at switching to a different toolkit.

I've poked around a bit looking for suggestions, but all the questions I found on here and other forum sites were also fairly old.

My main audience is, I think, going to be people who run Windows. If I, as a fairly experienced user, can't get the underlying GUI toolkit working, I can't expect Joe User to be able to do it, and I don't want to put any unnecessary barriers in the way of using my program.

I'm looking pretty strongly at WxWidgets, but I wanted to get some input, in case there's something better. What's the best toolkit these days for end-user ease-of-use on MS-Windows, that also works under Linux?

Replies are listed 'Best First'.
Re: State of the GUI widget art?
by Anonymous Monk on Sep 27, 2014 at 22:46 UTC

    Well, there's Tk, Gtk2, Wx, and maybe Qt (but I don't know if there's a well-maintained binding). Tk is the classic Perl GUI toolkit, but it doesn't look very modern (I've seen some extensions that help, but people still seem to want to move to "more modern" GUI toolkits). Gtk2 seems to be a pretty good toolkit, and I'd encourage you to dig into those installation problems a bit more, but since you're asking about alternatives, my main suggestion would be Citrus Perl, http://www.citrusperl.com/, which comes Wx ready-to-go.

      Thank you for your response.

      This actually isn't the first time I've wrangled with Gtk on Windows, so I'm fairly disenchanted with that, especially as their site very pointedly says the downloads are intended for devs, not end users. It's one thing for me to fight to shove a lib into place; quite another for me to ask my users to do it.

      I think what I'll be using is Prima. It installed cleanly from cpan under Strawberry, and the Web shows it had a release within the last 3 months.

      However, I welcome any further thoughts anyone might have on a better option, as I haven't yet had a chance to dig into Prima's documentation.

      Hmm, it looks like Citrus Perl hasn't had a release in over a year... :-/

        Hmm, it looks like Citrus Perl hasn't had a release in over a year... :-/

        And then what happened?

Re: State of the GUI widget art?
by james28909 (Deacon) on Sep 28, 2014 at 20:51 UTC
    ive used wx in the past and have come to like it pretty good. ppm has everything you need to get up and running. when i first started out i was trying to use these gui builders, but in the long run i finally resorted to scripting the gui manually. the more i worked with it, the more i come to like it. and it can easily be packed into an executable with perlapp or par packer.

    Wx has native looks to windows and is pretty much straight forward and has abunch of resources online to look up as well.

    Wx + PDK works nicely together :) ... or atleast it has for everything ive done so far.

      Thank you for your response.

      I am probably heading in that direction, going more low-level with the GUI, but I'm not sure I'm that confident in my programming skills, yet. I'll have to try both (straight Wx vs. Prima) a little bit and see which one moves more comfortably for me. Either way, I appreciate the input.

Re: State of the GUI widget art?
by jellisii2 (Hermit) on Sep 29, 2014 at 12:19 UTC
    There are others who complain about it, but I've been using Tkx for my desktop stuff. The nice thing about Tk is that the widget set kind of blends nicely with the window manager. Some complain that it's overly onerous to use, though. I many not find it that way because I cut my teeth on it.