Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Qt 5.2 built with Glib support under OS X - event loop doesn't work
tallica last edited by
I have built Qt 5.2.1 with Glib support under OS X 10.9. Here's a test code:
using namespace std;
static QApplication * qapp;
static int idle (void)
cout << "Idle callback called" << endl;
cout << "Quitting QApplication" << endl;
qapp->quit (); return G_SOURCE_REMOVE;
int main (void)
cout << "Creating QApplication" << endl;
int dummy_argc = 0; qapp = new QApplication (dummy_argc, 0); cout << "Adding idle callback" << endl; g_idle_add ((GSourceFunc) idle, 0); cout << "Starting QApplication" << endl; qapp->exec (); cout << "QApplication finished" << endl; cout << "Cleaning up" << endl; delete qapp; qapp = 0; cout << "All done" << endl; return 0;
This code works perfectly under Linux, callback is being called. Unfortunately, it doesn't work under OS X... unless you replace QApplication with QCoreApplication, then it works... I want to build a UI interface, so I have to use QApplication. Any idea why it doesn't work as expected?
Same problem with Qt 5.3.0.