Ah, sorry, I misread the first post. The default icon must be provided as a ready-to-use icon. So, if you do not provide the resource file on Linux, the icon cannot be created - hence the error message. So you would either need to #ifdef the code and leave out the default for Linux or add your default set of icons to the resource file on Linux too. I would go for the latter, as I would not bet that in any and every case you'll have system icons on Linux too, so providing your default set is a good idea. The additional size is negligible, in my opinion.