After upgrading my project from JUCE 7.0.1 to JUCE 7.0.8, the project does not link anymore. Upon linking the SharedCode module it fails with error LNK1248:
Spline_SharedCode.lib : fatal error LNK1248: image size (1003730A3) exceeds maximum allowable size (FFFFFFFF)
After some googling for this issue I found that this 32-bit limitation still holds true, even when compiling with a 64-bit toolset. There’s nothing to be done in the linker, one has to restructure their code.
I did a bisect on the JUCE repo and found the commit where the problem first appears to be this one:
Which is a rather feature rich commit.
Notable is that this issue seems to appear only for Release config builds, probably because of additional optimizations being done.
Also noteworthy for my case might be that I’m linking in a rather large static library containing synth wavetables. The static lib is around 500MB, however the final plugin binary boils down to 80Mb. I’ve tried to compile this library with
/O1 for a lighter size, to no avail.
Has anyone experienced this before or knows a workaround?
For the time being I could stay at a lower JUCE version of course, I didn’t upgrade for new features, rather to “catch up”.
A related forum post: