Re: xwindows client which is a win32 executable using GTK??



Hello I'm an experienced Win32 C/C++ programmer, I'm currently >investigating on the possibility
of implementing remotable win32 applications.

My question is whether the following architecture would be feasible:

Win32 program acting as an x-windows client using GTK+

if yes can I just recompile under GTK+ for Win32 to get a non remotable
application, so that I can offer both functionalities ( remote / local ) without recoding? Which dependencies on linux specific libraries are there in GTK other than Xlib, Xt, Xaw?

I'm asking this because I already made sure that an X-window client on Win32 works as expected, by downloading X and compiling a few test programs for win32, and as far I'm concerned it seems to work well.

Let me see if I understand you correctly. You want to write a win32 program that uses gtk+ for its GUI, and you want to be able to compile it to either use the local windows display or a remote x screen without modifying the code.

Well, you have a couple of options. Normally, gtk+ apps written for win32 link against a win32-native build of gtk+, which then uses the regular windows gdi to show the interface to the user. This would be your "non-remotable" app. What you want to do in addition, I think, is to link against a win32 native build of gtk+ that tries to connect to an X server rather than using the windows gdi.

To decide whether or not an app would be "remotable" or "non-remotable", you would choose which library to link against at build time. This would allow you to accomplish your goal without having to modify your program, but I don't know if the second set of libraries (win32 gtk+ -> X) exists yet. If you're really slick, you could download the gtk+ sources and code it yourself, but that sounds like a lot of work.

Another option is to build your program in a cygwin environment and link against cygwin builds of gtk+ and glib. The downside to this would be that you would have to have cygwin and X installed on every windows machine where you want to use the program, and you couldn't make the program specifically "non-remotable". Also, I'm not sure if there's a working build of glib for cygwin. I read somewhere (I believe on garnome's site) that people are still having problems getting glib 2.0.0 to compile under cygwin, but I don't know about 1.2. Performance would probably be a bit worse than a native build, but on the plus side the program would be instantly portable to gnu/linux.

There may very well be other options out there, and I'm sure other people on this list could comment, but that should be enough to get you looking in the right direction.

Hope that helps!

_________________________________________________________________
Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?page=features/junkmail




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