Unsolved The vtable symbol may be undefined. Why?
-
Hello all!
I've got this error:
the vtable symbol may be undefined because the class is missing its key function
Why is that and how to fix it? I've never been having this troubles before.
-
Hi,
What class is that ?
-
@SGaist Could you be pleased - IGNORE my messages. I've got a lot of your senseless replies.
-
I found this:
https://www.xspdf.com/resolution/55125387.html
https://stackoverflow.com/questions/45850063/what-is-a-c-key-function-as-described-by-goldBut all of this errors from boost library that is in static lib. Am I missing any flags when building Boost for linker or something similar? It's happening only on Android, for iOS/MacOS all is OK.
-
@bogong said in The vtable symbol may be undefined. Why?:
But all of this errors from boost library that is in static lib.
So where is the relation to Qt here?
-
@Christian-Ehrlicher I am trying to use it in QT Application. And don't see when building with Qt Creator. When directly with clang - all is OK.
-
@bogong
Did you see
https://lld.llvm.org/missingkeyfunction.html
I never saw this error before so not sure its related. -
@bogong Perhaps SGaist's question is not "senseless"
You quote a partial linker warning message from an unspecified tool chain, on an unspecified platform, compiling/linking unspecified code, that may or may not be related to Qt, and expect responses that are not the obvious questions needed to work out any of that. Care to fill in any of the blanks?
If the code is using Qt and the class concerned in the error message is related to a QObject derived class then messages of this sort can arise because a Q_OBJECT macro has been omitted.
-
@mrjj It's somehow related. But I should in this case change Boost sources. It's working for iOS/MacOS but failing when building it for Android only. It's very surprised because I am using old version of Boost. There might be the problem in the flags for compiler when I am trying to build static Boost library, there are b2 compiler that has own syntax. For now reading requirements for building *.so and *.a libraries for Android.