As I was rebuilding the Windows version of my C2NEmu client I thought to also finish off the Linux build and test it.
Luckily the last time I was working on the code I managed to finish most modifications for Linux so I only had to make minor changes here and there before starting testing.
I am happy to say that the client is looking and working as expected 🙂
C2NEmu GUI client
In order to make my website at https://www.luigidifraia.com easier to maintain, I decided to base it on WordPress. I will be keeping this blog separate, at least for now, but I will be moving some information from here to there in the next few weeks.
I also plan to add previously available content gradually so expect to find more there upon your next visit!
A number of URLs and downloads were surely broken by this change, but I will address that in due course.
If you would like to access my previous website it’s still available here.
I am finally able to provide an up-to-date GTK+2 runtime for all versions of Windows (32 and 64 bits) along with updates to a number of my applications. The installer was created along the lines of Alexander Shaduri’s Windows installer for the GTK+2 runtime that was maintained by him until GTK version 2.24.10, which is the version suffering incredible memory leaks around graphic operations.
Not only that, but I now also have means to provide future versions of the runtime, sourced from the MSYS2 project. This is as good as it gets, to be honest 🙂
So here’s some material to start with, again it only applies to Windows users of my applications:
- verify if the GTK+ application you are using is one from the list at point 5 below: if it’s not, feel free to ask me for a refreshed version before proceeding further;
- delete all versions of the GTK+ runtime that you have been advised to install prior to installing any of my GTK+ software;
- delete all versions of the GTK+ applications I distributed in the past (this is quite important too!), including those bundled with a GTK runtime;
- install the GTK+2 win32 runtime that you can download from here;
- reinstall/replace the GTK+ application you were using before with the refreshed one from the list below:
- TAPClean Front End 0.36 (includes TAPClean 0.34-pre4)
- Integrator 2012 LN bundle
- Integrator 2012 LN2 bundle (including load pictures)
- Integrator 2012 LN3 bundle
- Integrator 2012 Time Machine bundle
- Integrator 2012 Vendetta bundle
If you would like a DC2N4-LC GTK+ GUI client refresh, please get in touch and I will arrange for that to happen.
I just finished putting together my new build environment based on MSYS2 and I can happily build my applications based on GTK+2, which will then work on the rest of my testing PCs once I install the runtime package that I’ve put together yesterday, i.e. on my old laptop that runs Windows XP 32-bit 🙂
I am sharing an early screenshot of TAPClean Front End running on Windows 10 64-bit, compiled and running against 32-bit versions of GTK+ 2.24.31 libraries (and relevant dependencies).
TAPClean Front End running on Win 10 with GTK+ 2.24.31 runtime
At some point in the future I might also decide to provide 64-bit only runtime and applications, but for the time being 32-bit binaries work best for myself.
This evening I had quite some “fun” testing a weird behaviour that’s occurring with pretty much all of my GTK+ applications that use glib’s function g_file_get_contents() when compiled against glib 2.28.0 but run against glib 2.52.0. I don’t think it’s a glib issue per se as I suspect that the runtime might be playing a role here.
I’ll spare further details as these could easily drive a person insane, but long story short I will have to recompile all of my GTK+ applications against GTK+ 2.24.31 and use the MSYS2 gcc toolchain moving forward.
In practical terms this means I will have to find a new IDE that allows proper application debugging. That shouldn’t be too hard though 🙂
I am testing the installer I made for GTK+ 2.24.31 with excellent results so far 🙂
Here’s the IECHost GUI Client running on Windows 10 64-bit: even the firmware update option is working as expected!
IECHost GUI client under Windows 10 64-bit
In the afternoon today I’ve been having another look at GTK+ 3 and I have to admit that albeit the look and feel of the resulting applications is quite nice on Windows 10 (yes, haven’t downgraded to Windows 7 just yet), the interface editor, GLADE 3.x, is still as unstable as I remembered it from trying it a few years back:
IECHost client GUI created with GLADE 3
I managed to see GLADE segfault a few times and creating a project file that would always result in subsequent segfaults. Eventually I had to manually fix the project in a text editor (it’s just XML) in order to get it back to a working state.
That’s not a good enough experience so I think I will only make marginal use of it in the future, if any.
Regarding GTK+ 2, however, I made quite some progress with the MinGW SDK and runtime testing under Windows: During my regression testing with the IECHost client compiled against GTK+ version 2.24.31 I haven’t been able to reproduce the 2 major bugs that have so far frustrated me the most. This means that there are good chances I will be providing a runtime installer for GTK 2.24.31 that will be usable for all of my GTK+ applications: TAPClean FE, The Tast Ninja Construction Kit and Integrator 2012, the GUI clients for DC2N4-LC, C2NEmu, and IECHost, to name a few. This means I will not have to provide binary packages for my GTK+ applications that include a working, and possibly application specific, runtime.
Essentially, I’m over the moon today 🙂