Things I learned today

After a "fun" morning of convincing libnfc and a few small applications I'd written in C to compile in Window 7 with mingw32, I learned a few things so I'm just jotting them down for future reference.

  • If Cygwin is behaving oddly and every operation takes a long time to complete, updating the installed packages and checking your config files doesn't fix the issue, just give up! Copy the home folder elsewhere, delete the cygwin folder, download the installer again (the installer doesn't update itself so it's always worth having a fresh one just in case), and install from scratch. Voila, everything is working nicely again

  • If the cmake script for libnfc complains about FixBundles.cmake, it's just a quick hack to remove the offending line from the file that cmake mentions. I have absolutely no idea what FixBundles might be for but it's in a section marked for WIN32 and everything still worked fine when I commented it out ;)

  • Despite my having somehow fixed it in my head that int a,b = 0; creates two ints - a and b and assigns them both to zero, that is very much not the case. Two ints are created but only b is assigned. To do what I had in mind, I'd need int a=0,b=0;

  • Related to the above, gcc on linux seems to give ints a default value of 0. This is not true of other variants of gcc. I noticed the mistake mentioned in the previous point while compiling some code with mingw32. Is the behaviour undefined or is it defined that a will be undefined? I know I cba to check ;)

  • Blueberry tea is quite nice but a bit too sweet for my taste.

  • It's time for a beer in the Belgian Monk

That is all :)

Tags: blog