I was trying to use SoQt on the latest macOS (10.14 Mojave), but I get errors like this:
Must construct a QApplication before a QWidget
I get this error from a simple test program that compiled fine on macOS 10.12 Sierra, so it must be related to the latest changes in the OS. (You can find the code here, if you want to test it: https://github.com/ric-bianchi/Coin3D-SoQt-Examples - the instructions in the README need to be updated, sorry)
I looked on the web and it seems that this error can come for a quite different number of reasons.
Before digging into the problem, I wanted to ask you if someone else tested SoQt on Mojave successfully, and how.
Thanks for your help, and have a good day,
Riccardo.
Copying OS X content lib/SoQt.framework/Versions/A/Resources/materials/winter/winter8.h
Copying OS X content lib/SoQt.framework/Versions/A/Resources/materials/winter/winter9.h
[ 82%] Linking CXX shared library ../lib/SoQt.framework/SoQt
Undefined symbols for architecture x86_64:
"SoSFTime::setValue(SbTime)", referenced from:
SoGuiViewpointWrapper::sendBindEvents(SoNode*, int) in ViewpointWrapper.cpp.o
"SbPList::find(void*) const", referenced from:
SoQtComponent::removeVisibilityChangeCallback(void (*)(void*, int), void*) in SoQtComponent.cpp.o
SoQtFullViewer::removeAppPushButton(QWidget*) in FullViewer.cpp.o
SoQtFullViewer::findAppPushButton(QWidget*) const in FullViewer.cpp.o
SoQtRenderArea::registerDevice(SoQtDevice*) in SoQtRenderArea.cpp.o
SoQtRenderArea::~SoQtRenderArea() in SoQtRenderArea.cpp.o
SoQtRenderArea::unregisterDevice(SoQtDevice*) in SoQtRenderArea.cpp.o
SoGuiViewpointWrapper::set_bind_cb(void*, SoSensor*) in ViewpointWrapper.cpp.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/SoQt.framework/Versions/A/SoQt] Error 1
make[1]: *** [src/CMakeFiles/SoQt.dir/all] Error 2
make: *** [all] Error 2