Seems the unresolved externals are all new virtual functions that have a default implementation. Somehow, the linker is not resolving those to the default implementation. Any ideas?
No idea how you’d manage to get that! Those are all just defined in the TextEditor code. Perhaps you’re including the wrong version of the headers, and building against some mis-matched cpps?
I suspected something like that as well, so to be sure I completely replaced my previous juce folder with only contents from the latest git release and the same results. Double checking I see the following in the juce_TextEditor.h…
class JUCE_API Listener
{
public:
/** Destructor. */
virtual ~Listener() {}
/** Called when the user changes the text in some way. */
virtual void textEditorTextChanged (TextEditor& editor);
/** Called when the user presses the return key. */
virtual void textEditorReturnKeyPressed (TextEditor& editor);
/** Called when the user presses the escape key. */
virtual void textEditorEscapeKeyPressed (TextEditor& editor);
/** Called when the text editor loses focus. */
virtual void textEditorFocusLost (TextEditor& editor);
};
Yeah, tried that and it definitely breaks the compile, so at least I know I have the right file. We have been using Juce for a while in this development (great library, by the way) so it’s not it’s even a new project/solution. Never seen anything like this issue before. Weird.
Anyway, thanks Jules. I’ll keep digging and post a solution when I find it just in case anyone else sees a similar issue.
Resolved when I moved to the amalgamated code. I tend to think (well, strongly think) that it was something wrong in my Solution that I fixed when moving to the amalgamated code.