Re: [gnome-love] interface for C program



Illes J. Farkas wrote:

Hi,

I need to build a graphical interface for my C program (with data input,
input file selection, run-time messages, some drawing on a canvas etc.)
and compile the entire package for both Linux and Windows users.

I've been working with C, perl and java for some years now, and a few days
ago I was told I should use Tcl/Tk and connect that to my C program.
However, now I rather doubt that 'wish' will be able to communicate with
an executable in a reliable, platform-independent way.

Please, tell me, if I'm wrong.

You're wrong. :) Tcl/Tk has been used for years to do just what you describe. I've done
it myself on Unix (although it was a while ago, before the move to 8.x).

I would think that the tricky part would be getting the build and linking right on both Linux
and Windows -- but that will be true with whatever solution you try.

I would be absolutely happy with any solution that I can understand and
can compile into a reliable software for both platforms. In the end, the
users of the program should only need to say <name_of_program> (on Linux)
or click on the icon (Windows).

You could use Tcl/Tk and build a custom executable for both platforms.
You could use Tcl/Tk and try to use a stock 'wish' and do dynamic loading.
You could use Gtk+ and build a custom executable for both platforms.
I don't think there's a Glib/Gtk+ equivalent of Tcl's 'package' and dynamic loading
capabilities, but I could be wrong.

One example of an application which is regularly released in both Windows and Linux versions using Gtk+ to give C code a GUI is FreeCiv (http://www.freeciv.org/).
You could look at them for an example; I'm sure there are other.


Good luck,

Zach Frey






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]