Windows port…
I’ve spent a few days to make Libgda and Libgnomedb work under Windows, using the cross compilation toolchain provided by MinGW .
Here are a few of the adaptations I’ve had to make (with the help of other people who have already done a big part of that job):
- make sure file names are with the correct separator (even though I’m not sure it would not work with standard unix separators)
- make the libraries relocatable as people tend to install them in various places not depending on compile time settings. This is required since both libraries use a lot of external ressources (XML files, pictures, plugin files). For this purpose, the GLib provides a WIN32 specific API such as g_win32_get_package_installation_directory(), which is not available for Unix, so to complete the job, I used the BinReloc code.
- define strtok_r() which does not exist in the WIN32 API
- rework a bit the configure.in and some of the Makefile.am files
The modifications will soon be in SVN and I’ll add a dedicated page on the Gnome-DB wiki for those of you who want to test…
Here is a screenshot of the result:

June 12th, 2007 at 3:37 pm
Nice waste of time.
June 12th, 2007 at 6:04 pm
Not really, considering that there are some Windows users out there (some of them may not be able to choose the OS they work on).
June 12th, 2007 at 8:29 pm
Thanks vivien. This is important and thankless work. I would say more about how this contributes overall to software freedom and forces a clean architecture in the long run, but my car is busted and I have to catch a ride to the mechanic!
June 12th, 2007 at 9:39 pm
vivien: Rock on, don’t let the haters get you down.
June 12th, 2007 at 11:56 pm
This is cool!
I personally would not want to write software that only works on Linux. This will open up another component for me.
Thx!
June 13th, 2007 at 12:47 pm
That’s excellent news. I have been looking forward to this.
Portability contributes to any library’s success, and Windows is a significant part of the OS world.
So I’m sure once the Windows port is stable this will add a large userbase to Libgda and Libgnomedb.