# FXRuby versus Tk

**URL:** <https://rubytalk.org/t/fxruby-versus-tk/45776>\
**Category:** ruby-talk\
**Created:** [9 April 2008 19:40 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776 "2008-04-09T19:40:36Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![Alex\_DeCaria](https://avatars.discourse-cdn.com/v4/letter/a/dec6dc/32.png) [@Alex\_DeCaria](https://rubytalk.org/u/Alex_DeCaria)\
**Post date:** [9 April 2008 19:40 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/1 "2008-04-09T19:40:36Z")

</div>

I've done some GUI program with Ruby/Tk, and am able to use it fairly  
well, but am considering a switch to FXRuby. Can someone give me a  
comparison of the two and provide me with a reason to either switch to  
FXRuby or stay with Ruby/Tk? I'm interested in which is more powerful,  
easier to use, better documented, etc.

Thanks,

Alex

> **···**
>
> --  
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

---

<div class="post-metadata">

**Author:** ![Lyle\_Johnson5](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Lyle\_Johnson5](https://rubytalk.org/u/Lyle_Johnson5)\
**Post date:** [9 April 2008 20:07 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/2 "2008-04-09T20:07:11Z")

</div>

Claims about which GUI toolkit (or programming language, or text  
editor, ...) is more powerful, easier to use and better documented are  
highly subjective. My advice in situations like this is to go ahead  
and try out FXRuby for a few simple things, and decide for yourself  
which one you like better. As long as you're shopping around, you  
might also want to try out some of the other popular GUI toolkits for  
Ruby, like Ruby/GTK, QtRuby and wxRuby.

You don't say why it is that you're considering a switch from Ruby/Tk,  
and so I'm not quite sure how to answer your question. FXRuby is  
"powerful" in the sense that it's backed up by FOX, a highly optimized  
and resource friendly GUI library written in C++. Like most  
non-trivial libraries, with a large number of classes and methods and  
so forth, it can be non-easy to get started with. The API  
documentation is pretty thorough, there are a handful of tutorials at  
the FXRuby web site, and a FXRuby book  
([http://www.pragprog.com/titles/fxruby/\](http://www.pragprog.com/titles/fxruby/%5C)) is available to help people  
get started with FXRuby programming.

Hope this helps,

Lyle

> **···**
>
> On Wed, Apr 9, 2008 at 2:40 PM, Alex DeCaria \<alex.decaria@millersville.edu\> wrote:
> 
> > I've done some GUI program with Ruby/Tk, and am able to use it fairly  
> > well, but am considering a switch to FXRuby. Can someone give me a  
> > comparison of the two and provide me with a reason to either switch to  
> > FXRuby or stay with Ruby/Tk? I'm interested in which is more powerful,  
> > easier to use, better documented, etc.

---

<div class="post-metadata">

**Author:** ![Alex\_DeCaria](https://avatars.discourse-cdn.com/v4/letter/a/dec6dc/32.png) [@Alex\_DeCaria](https://rubytalk.org/u/Alex_DeCaria)\
**Post date:** [9 April 2008 21:15 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/3 "2008-04-09T21:15:11Z")

</div>

Lyle,

Thanks. My disenchantment with Ruby/Tk has to do with the fact that the  
main documentation I have is for Perl/Tk, and trying to translate that  
for use with Ruby was painful, and involved a lot of trial and error.  
FXRuby appeals to me because it sounds like there is actual  
documentation for it directly for use with Ruby.

I'm also concerned with portability. If I write a nice app that I want  
to share with someone else, and if they are not a knowledgable computer  
user, which GUI library would be easier for me to talk them into  
installing on their machine so they can run my application? Am I  
correct in thinking that FXRuby comes as part of the Windows 1-click  
installer? That would be an advantage.

Alex

> **···**
>
> --  
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

---

<div class="post-metadata">

**Author:** ![Marc\_Heiler](https://avatars.discourse-cdn.com/v4/letter/m/e8c25b/32.png) [@Marc\_Heiler](https://rubytalk.org/u/Marc_Heiler)\
**Post date:** [9 April 2008 21:27 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/4 "2008-04-09T21:27:04Z")

</div>

> I'm interested in which is more powerful, easier to use, better documented, etc.

Personally I am using ruby-gtk (because of the wiki back then), and on  
my current agenda is also to slowly add new knowledge to Ruby-qt so that  
I can use this. (I think ruby-qt4 looks very decent.)

[I also try to never tie components to one particular toolkit, so that I  
can quickly switch to other toolkits if need be.]

The biggest decisive factor for me back then was the documentation, and  
the ruby-gtk wiki was superior therein to all the other toolkits IMO -  
and I hope Lyle will implement some kind of wiki one day specifically  
for FXRuby. 🙂  
(The kde wiki guy for example approved my suggestion to start a kde-wiki  
project for ruby-qt by the way, I just have not started it yet because I  
really  
lack the time these days. But maybe the Fox creator can do something  
there.)

Anyway, FXRuby has one big thing going for it - this is Lyle! 🙂

(I mean this seriously by the way, a driving and knowledeable "force"  
is of invaluable help in the long run. I have noticed this myself when I  
needed help with RMagick, and the RMagick maintainer helped me a lot.)

> Am I correct in thinking that FXRuby comes as part of the Windows 1-click  
> installer? That would be an advantage.

I am not sure, it could be that the user has to install it lateron. But  
to be honest such a problem should be overcome rather quickly in an  
automatic way, and if it is windows specific, maybe the windows folks  
manage to either allow "hooks" (so that windows folks can distribute  
their flavoured version of windows install components, i.e. you could  
add Fox to that list easily) or allow a "big distribution" of various  
components together, where one can select what he needs.

> **···**
>
> --  
> Posted via [http://www.ruby-forum.com/\](http://www.ruby-forum.com/%5C).

---

<div class="post-metadata">

**Author:** ![Lyle\_Johnson5](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Lyle\_Johnson5](https://rubytalk.org/u/Lyle_Johnson5)\
**Post date:** [9 April 2008 21:29 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/5 "2008-04-09T21:29:36Z")

</div>

> Thanks. My disenchantment with Ruby/Tk has to do with the fact that the  
> main documentation I have is for Perl/Tk, and trying to translate that  
> for use with Ruby was painful, and involved a lot of trial and error.  
> FXRuby appeals to me because it sounds like there is actual  
> documentation for it directly for use with Ruby.

Yes, there is actual documentation for using FXRuby with Ruby. 😉

> I'm also concerned with portability. If I write a nice app that I want  
> to share with someone else, and if they are not a knowledgable computer  
> user, which GUI library would be easier for me to talk them into  
> installing on their machine so they can run my application? Am I  
> correct in thinking that FXRuby comes as part of the Windows 1-click  
> installer? That would be an advantage.

FXRuby is indeed included in the one-click installer for Windows. It's  
also available as a binary gem for Windows and Mac OS X (Leopard),  
which means that installation on those platforms is relatively  
painless. Rather than trying to provide binary gems for the myriad  
options in the Linux world (so many different OS/compiler/Ruby  
versions), we currently depend on building the code there from source.  
But it's certainly portable in the sense that it works on most  
operating systems.

> **···**
>
> On Wed, Apr 9, 2008 at 4:15 PM, Alex DeCaria \<alex.decaria@millersville.edu\> wrote:

---

<div class="post-metadata">

**Author:** ![Tom\_Copeland](https://avatars.discourse-cdn.com/v4/letter/t/94ad74/32.png) [@Tom\_Copeland](https://rubytalk.org/u/Tom_Copeland)\
**Post date:** [9 April 2008 21:36 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/6 "2008-04-09T21:36:19Z")

</div>

Windows-wise, I wonder if rubyscript2exe:

[http://www.erikveen.dds.nl/rubyscript2exe/](http://www.erikveen.dds.nl/rubyscript2exe/)

would do the trick. Does it also gather up all the native dependencies?  
If so, maybe it'll pull together FOX and the FxRuby bindings and provide  
you with a nice exe that folks can just run without even needing to  
install Ruby...

Yours,

Tom

> **···**
>
> On Thu, 2008-04-10 at 06:15 +0900, Alex DeCaria wrote:
> 
> > I'm also concerned with portability. If I write a nice app that I want  
> > to share with someone else, and if they are not a knowledgable computer  
> > user, which GUI library would be easier for me to talk them into  
> > installing on their machine so they can run my application? Am I  
> > correct in thinking that FXRuby comes as part of the Windows 1-click  
> > installer? That would be an advantage.

---

<div class="post-metadata">

**Author:** ![Lyle\_Johnson5](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Lyle\_Johnson5](https://rubytalk.org/u/Lyle_Johnson5)\
**Post date:** [9 April 2008 21:34 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/7 "2008-04-09T21:34:55Z")

</div>

> [I also try to never tie components to one particular toolkit, so that I  
> can quickly switch to other toolkits if need be.]

This may be the most important piece of advice to take away from this thread. 😉

> The biggest decisive factor for me back then was the documentation, and  
> the ruby-gtk wiki was superior therein to all the other toolkits IMO -  
> and I hope Lyle will implement some kind of wiki one day specifically  
> for FXRuby. 🙂

In the past, I've posted stuff on the FOX Community Wiki (at  
[http://www.fox-toolkit.net/\](http://www.fox-toolkit.net/%5C)), but it might be nice to have a dedicated  
Wiki for FXRuby. The default option for Wikis on RubyForge-hosted  
sites is (was?) UseMod, and it was such a spam magnet that it was  
basically unusable. Not sure if that situation has changed, but if it  
hasn't, I'd need to look for some alternative location to host such a  
Wiki.

> **···**
>
> On Wed, Apr 9, 2008 at 4:27 PM, Marc Heiler \<shevegen@linuxmail.org\> wrote:

---

<div class="post-metadata">

**Author:** ![Adam\_Shelly](https://avatars.discourse-cdn.com/v4/letter/a/e19b73/32.png) [@Adam\_Shelly](https://rubytalk.org/u/Adam_Shelly)\
**Post date:** [9 April 2008 22:04 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/8 "2008-04-09T22:04:56Z")

</div>

Yes, this works well (although the executable can get large).  
I created a flash-card quiz program as a stand-alone Windows  
executable using FxRuby, RMagic and rubyscript2exe.

-Adam

> **···**
>
> On 4/9/08, Tom Copeland \<tom@infoether.com\> wrote:
> 
> > On Thu, 2008-04-10 at 06:15 +0900, Alex DeCaria wrote:  
> > \> I'm also concerned with portability. If I write a nice app that I want  
> > \> to share with someone else, and if they are not a knowledgable computer  
> > \> user, which GUI library would be easier for me to talk them into  
> > \> installing on their machine so they can run my application? Am I  
> > \> correct in thinking that FXRuby comes as part of the Windows 1-click  
> > \> installer? That would be an advantage.
> > 
> > Windows-wise, I wonder if rubyscript2exe:
> > 
> > [http://www.erikveen.dds.nl/rubyscript2exe/](http://www.erikveen.dds.nl/rubyscript2exe/)
> > 
> > would do the trick. Does it also gather up all the native dependencies?  
> > If so, maybe it'll pull together FOX and the FxRuby bindings and provide  
> > you with a nice exe that folks can just run without even needing to  
> > install Ruby...

---

<div class="post-metadata">

**Author:** ![Matt\_Mower](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@Matt\_Mower](https://rubytalk.org/u/Matt_Mower)\
**Post date:** [10 April 2008 07:23 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/9 "2008-04-10T07:23:56Z")

</div>

> FXRuby is indeed included in the one-click installer for Windows. It's  
> also available as a binary gem for Windows and Mac OS X (Leopard),  
> which means that installation on those platforms is relatively  
> painless.

Seeing the announcement of the book I thought I'd take another look at  
Fox. In the past I'd always hit installation problems with Fox so the  
binary gem sounded promising.

I installed the current gem (fxruby (1.6.14)) but:

Siona:~ matt$ irb

> > require 'rubygems'

=\> false

> > require 'fox16'

/opt/local/lib/ruby/gems/1.8/gems/fxruby-1.6.14-universal-darwin-9/ext/fox16/fox16.bundle:  
[BUG] Bus Error  
ruby 1.8.6 (2007-09-23) [i686-darwin9.1.0]

Abort trap  
Siona:~ matt$

This is 10.5.2 with ports ruby:

Siona:~ matt$ ruby -v  
ruby 1.8.6 (2007-09-23 patchlevel 110) [i686-darwin9.1.0]

Regards,

Matt

> **···**
>
> On 4/9/08, Lyle Johnson \<lyle@lylejohnson.name\> wrote:
> 
> --  
> Matt Mower :: [http://matt.blogs.it/](http://matt.blogs.it/)

---

<div class="post-metadata">

**Author:** ![Lyle\_Johnson5](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Lyle\_Johnson5](https://rubytalk.org/u/Lyle_Johnson5)\
**Post date:** [10 April 2008 12:51 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/10 "2008-04-10T12:51:27Z")

</div>

> Seeing the announcement of the book I thought I'd take another look at  
> Fox. In the past I'd always hit installation problems with Fox so the  
> binary gem sounded promising.
> 
> I installed the current gem (fxruby (1.6.14)) but:

\<boom\>

> This is 10.5.2 with ports ruby:
> 
> Siona:~ matt$ ruby -v  
> ruby 1.8.6 (2007-09-23 patchlevel 110) [i686-darwin9.1.0]

Right, the gem is intended for use with Apple's built-in Ruby for Leopard. If you're using MacPorts, however, I'd recommend just installing the port for FXRuby:

&nbsp;&nbsp;sudo port install rb-fxruby

Hope this helps,

Lyle

> **···**
>
> On Apr 10, 2008, at 2:23 AM, Matt Mower wrote:
> 
> ---  
> "FXRuby: Create Lean and Mean GUIs with Ruby"  
> Now available from the Pragmatic Bookshelf!
> 
> > **[Pragmatic Bookshelf: By Developers, For Developers](https://pragprog.com)**
> >
> > We improve the lives of professional developers. We create timely, practical books on classic and cutting-edge topics to help you learn and practice your craft, and accelerate your career. Come learn with us.

---

<div class="post-metadata">

**Author:** ![gregarican](https://avatars.discourse-cdn.com/v4/letter/g/7feea3/32.png) [@gregarican](https://rubytalk.org/u/gregarican)\
**Post date:** [11 April 2008 02:35 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/11 "2008-04-11T02:35:03Z")

</div>

It seems as the more things change...you know the cliche. Back around  
2003 or so I was trying to create production GUI apps using Ruby. I  
used (and still use) Ruby for a myriad of headless scripted apps. But  
for GUI apps I was left between Qt, Fox, Tk, Wx, and a few other more  
obscure toolkits (Widestudio e.g.). Besides the OO feel of the  
respective options one of the deciding factors was the availability of  
Ruby-specific English documentation. Back then I had to choose between  
deciphering Qt method calls into Ruby, interpreting Tk documentation  
for Ruby originally written in Japansese or else translating English  
docs meant for Python, etc.

Don't get me wrong. Out of most all of the languages I've worked with  
I prefer to use Ruby for my "quick and dirty" work. But for RAD GUI  
development I still haven't found a drag and drop widget solution that  
comes close to Microsoft Visual Studio. Albeit using C# is like  
working with your hands tied behind your back compared to Ruby. If  
there's something out there for Ruby that comes close now I'd love to  
see it.

> **···**
>
> On Apr 10, 8:51 am, Lyle Johnson \<l...@lylejohnson.name\> wrote:
> 
> > On Apr 10, 2008, at 2:23 AM, Matt Mower wrote:
> > 
> > \> Seeing the announcement of the book I thought I'd take another look at  
> > \> Fox. In the past I'd always hit installation problems with Fox so the  
> > \> binary gem sounded promising.
> > 
> > \> I installed the current gem (fxruby (1.6.14)) but:
> > 
> > \<boom\>
> > 
> > \> This is 10.5.2 with ports ruby:
> > 
> > \> Siona:~ matt$ ruby -v  
> > \> ruby 1.8.6 (2007-09-23 patchlevel 110) [i686-darwin9.1.0]
> > 
> > Right, the gem is intended for use with Apple's built-in Ruby for  
> > Leopard. If you're using MacPorts, however, I'd recommend just  
> > installing the port for FXRuby:
> > 
> > ```
> > sudo port install rb\-fxruby
> > 
> > ```
> > 
> > Hope this helps,
> > 
> > Lyle
> > 
> > ---  
> > "FXRuby: Create Lean and Mean GUIs with Ruby"  
> > Now available from the Pragmatic Bookshelf! [Pragmatic Bookshelf: By Developers, For Developers](http://www.pragprog.com/titles/fxruby)

---

<div class="post-metadata">

**Author:** ![Matt\_Mower](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@Matt\_Mower](https://rubytalk.org/u/Matt_Mower)\
**Post date:** [11 April 2008 08:07 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/12 "2008-04-11T08:07:10Z")

</div>

Hi Lyle.

> Right, the gem is intended for use with Apple's built-in Ruby for Leopard.  
> If you're using MacPorts, however, I'd recommend just installing the port  
> for FXRuby:
> 
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sudo port install rb-fxruby

Thanks for the advice. I confess I wasn't entirely surprised when the  
rb-fxruby port didn't work for me:

---\> Building rb-fxruby with target setup  
Error: Target org.macports.build returned: shell command " cd  
"/opt/local/var/macports/build/\_opt\_local\_var\_macports\_sources\_rsync.macports.org\_release\_ports\_ruby\_rb-fxruby/work/FXRuby-1.6.13"  
&& /opt/local/bin/ruby -rvendor-specific install.rb setup " returned  
error 1  
Command output: cc -dynamic -bundle -undefined suppress  
-flat\_namespace -o fox16.bundle librb.o core\_wrap.o dc\_wrap.o  
dialogs\_wrap.o frames\_wrap.o fx3d\_wrap.o FXRbApp.o FXRbDataTarget.o  
FXRbGLViewer.o FXRuby.o iconlist\_wrap.o icons\_wrap.o image\_wrap.o  
impl.o label\_wrap.o layout\_wrap.o list\_wrap.o markfuncs.o mdi\_wrap.o  
menu\_wrap.o scintilla\_wrap.o table\_wrap.o text\_wrap.o treelist\_wrap.o  
ui\_wrap.o unregisterOwnedObjects.o -L"." -L"/opt/local/lib"  
-L"/opt/local/lib" -L"/usr/X11R6/lib" -L. -L/opt/local/lib -lruby  
-lfxscintilla -lFOX-1.6 -lGLU -lGL -lX11 -lXext -ltiff -ljpeg -lz  
-lpng -lstdc++ -lpthread -ldl -lobjc  
i686-apple-darwin9-gcc-4.0.1: core\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: dc\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: dialogs\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: frames\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: fx3d\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: FXRbApp.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: FXRbDataTarget.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: FXRbGLViewer.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: FXRuby.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: iconlist\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: icons\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: image\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: impl.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: label\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: layout\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: list\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: markfuncs.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: mdi\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: menu\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: scintilla\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: table\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: text\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: treelist\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: ui\_wrap.o: No such file or directory  
i686-apple-darwin9-gcc-4.0.1: unregisterOwnedObjects.o: No such file  
or directory  
make: \*\*\* [fox16.bundle] Error 1  
setup failed  
'system make ' failed  
Try 'ruby install.rb --help' for detailed usage.

I'm just reporting this FYI because I'm not planning to spend any more  
time on this; I was only going to noodle about with Fox anyway and  
messing with broken ports isn't my idea of fun.

If I ever switch to Leopard Ruby I will be sure to give your binary gem a whirl.

Regards,

Matt

> **···**
>
> On 4/10/08, Lyle Johnson \<lyle@lylejohnson.name\> wrote:
> 
> --  
> Matt Mower :: [http://matt.blogs.it/](http://matt.blogs.it/)

---

<div class="post-metadata">

**Author:** ![M\_Edward\_Ed\_Borasky1](https://avatars.discourse-cdn.com/v4/letter/m/e9c0ed/32.png) [@M\_Edward\_Ed\_Borasky1](https://rubytalk.org/u/M_Edward_Ed_Borasky1)\
**Post date:** [11 April 2008 03:12 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/13 "2008-04-11T03:12:23Z")

</div>

gregarican wrote:

> > > Seeing the announcement of the book I thought I'd take another look at  
> > > Fox. In the past I'd always hit installation problems with Fox so the  
> > > binary gem sounded promising.  
> > > I installed the current gem (fxruby (1.6.14)) but:
> > 
> > \<boom\>
> > 
> > > This is 10.5.2 with ports ruby:  
> > > Siona:~ matt$ ruby -v  
> > > ruby 1.8.6 (2007-09-23 patchlevel 110) [i686-darwin9.1.0]
> > 
> > Right, the gem is intended for use with Apple's built-in Ruby for Leopard. If you're using MacPorts, however, I'd recommend just installing the port for FXRuby:
> > 
> > &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sudo port install rb-fxruby
> > 
> > Hope this helps,
> > 
> > Lyle
> > 
> > ---  
> > "FXRuby: Create Lean and Mean GUIs with Ruby"  
> > Now available from the Pragmatic Bookshelf! [Pragmatic Bookshelf: By Developers, For Developers](http://www.pragprog.com/titles/fxruby)
> 
> It seems as the more things change...you know the cliche. Back around  
> 2003 or so I was trying to create production GUI apps using Ruby. I  
> used (and still use) Ruby for a myriad of headless scripted apps. But  
> for GUI apps I was left between Qt, Fox, Tk, Wx, and a few other more  
> obscure toolkits (Widestudio e.g.). Besides the OO feel of the  
> respective options one of the deciding factors was the availability of  
> Ruby-specific English documentation. Back then I had to choose between  
> deciphering Qt method calls into Ruby, interpreting Tk documentation  
> for Ruby originally written in Japansese or else translating English  
> docs meant for Python, etc.
> 
> Don't get me wrong. Out of most all of the languages I've worked with  
> I prefer to use Ruby for my "quick and dirty" work. But for RAD GUI  
> development I still haven't found a drag and drop widget solution that  
> comes close to Microsoft Visual Studio. Albeit using C# is like  
> working with your hands tied behind your back compared to Ruby. If  
> there's something out there for Ruby that comes close now I'd love to  
> see it.

In the Linux world, there's KDevelop/Korundum/Kommander, all built on top of Qt/QtDesigner. But I don't know how portable an app built with that toolset would be to Windows or a Mac.

> **···**
>
> > On Apr 10, 8:51 am, Lyle Johnson \<l...@lylejohnson.name\> wrote:
> > 
> > > On Apr 10, 2008, at 2:23 AM, Matt Mower wrote:

---

<div class="post-metadata">

**Author:** ![Lyle\_Johnson5](https://avatars.discourse-cdn.com/v4/letter/l/7c8e57/32.png) [@Lyle\_Johnson5](https://rubytalk.org/u/Lyle_Johnson5)\
**Post date:** [11 April 2008 14:31 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/14 "2008-04-11T14:31:38Z")

</div>

> Thanks for the advice. I confess I wasn't entirely surprised when the  
> rb-fxruby port didn't work for me:

\<snip output\>

Yes, that's due to a bug in the ruby port you're using. Trying doing:

&nbsp;&nbsp;&nbsp;&nbsp;sudo port sync

to pull down the latest ports metadata, and then:

&nbsp;&nbsp;&nbsp;&nbsp;sudo port update ruby

And finally,

&nbsp;&nbsp;&nbsp;&nbsp;sudo port install rb-fxruby

> I'm just reporting this FYI because I'm not planning to spend any more  
> time on this; I was only going to noodle about with Fox anyway and  
> messing with broken ports isn't my idea of fun.

I understand. MacPorts is great when it works, but it's sort of a  
nightmare trying to support it. I like the idea of MacPorts building  
things from source, but when your dependencies get out of whack it can  
be a difficult problem to diagnose. There's something to be said for  
the all-binaries packaging approach that most package managers take,  
where someone else has already compiled the code and you have a better  
shot of it working right off the bat. 😉

> If I ever switch to Leopard Ruby I will be sure to give your binary gem a whirl.

Great!

> **···**
>
> On Fri, Apr 11, 2008 at 3:07 AM, Matt Mower \<matt.mower@gmail.com\> wrote:

---

<div class="post-metadata">

**Author:** ![Phil](https://avatars.discourse-cdn.com/v4/letter/p/e95f7d/32.png) [@Phil](https://rubytalk.org/u/Phil)\
**Post date:** [11 April 2008 03:26 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/15 "2008-04-11T03:26:33Z")

</div>

M. Edward (Ed) Borasky wrote:

> In the Linux world, there's KDevelop/Korundum/Kommander, all built on  
> top of Qt/QtDesigner. But I don't know how portable an app built with  
> that toolset would be to Windows or a Mac.

KDE apps aren't portable to "pute" Qt, as I understand it.

However, KDE4 libraries for Windows are being worked on (or were as of  
last year..).

- --  
Phillip Gawlowski  
Twitter: twitter.com/cynicalryan

Follow each decision as closely as possible with its associated action.  
~ - The Elements of Programming Style (Kernighan & Plaugher)

---

<div class="post-metadata">

**Author:** ![Joel\_VanderWerf1](https://avatars.discourse-cdn.com/v4/letter/j/94ad74/32.png) [@Joel\_VanderWerf1](https://rubytalk.org/u/Joel_VanderWerf1)\
**Post date:** [11 April 2008 03:31 UTC](https://rubytalk.org/t/fxruby-versus-tk/45776/16 "2008-04-11T03:31:06Z")

</div>

M. Edward (Ed) Borasky wrote:

> In the Linux world, there's KDevelop/Korundum/Kommander, all built on top of Qt/QtDesigner. But I don't know how portable an app built with that toolset would be to Windows or a Mac.

I think Qt is on windows now, and with the Trolltech/Nokia merger Qt probably will be pretty widespread.

The big advantage (for some uses) of FXRuby is the license. Unless things have changed recently, it's LGPL for FXRuby vs. GPL/$$$ for Qt.

I've found FXRuby to be a really nice layer to build Gui DSLs on top of. Who needs drag-and-drop UI builders.

TkRuby is useful for its Canvas widget, among other things. I've never found a better way to quickly produce 2D animations that also have complex user interactions (not just click, drag, drop, but even embedded widgets).

> **···**
>
> --  
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407
