I’m updating an app (was working on Juce as of a few months ago), and did a fresh IntroJucer project and did a build and I have the weirdest problem.
I use an Image constructor twice, and the linker can’t find it. It’s Mac, 64-bit build, everything else default, pretty much (fair amount adding in, but nothing that should collide).
JuceDemo with the same workflow (convert to 64-bit only) seems fine.
My code seems normal:
I’m a bit stumped. The Juce modules look to be getting compiled. I could go dig around in the .o files for symbols, but I can’t see why one would have been ‘removed’? Or else the linker is doing this first and maybe everything is borked?
Undefined symbols for architecture x86_64:
"juce::Image::Image(juce::Image::AVPixelFormat, int, int, bool)", referenced from:
Controller::handleMessage(juce::Message const&) in Controller.o
GPUContext::initOpenGL() in GPUContext-D48C18D45C3C2D9F.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)