Qt connect "no such slot" when slot definitely does exist
qt, signals-slots
Solution
Check whether whether that `moc_mainwindow.cpp` is in your `Build Path`. Or you are using some other moc_window.cpp file. Because, for ex: In QtCreator, it build the source to a new build directory. And also it uses old moc_cpp file(s) if you try to open the source in a different location.
What I am trying to say is the moc file which you checked may contain those slot definition, but compiler might be using some other moc file which was created earlier.
Problem
Qt v4.8.0, VC2010 compiler I have a `QMainWindow` based class and I'm trying to send it signals involving `QUuid` However, every time I run it I get the errors: ``` Object::connect: No such slot MainWindow::on_comp_connected(QUuid) in ..\..\src\mainwindow.cpp:143 Object::connect: (receiver name: 'MainWindow') ``` It's driving me potty as the slot definitely does exist (it's in the moc_) ``` class MainWindow : public QMainWindow { Q_OBJECT // SNIP private typedefs public: MainWindow(QWidget *parent = 0, Qt::WFlags flags = 0); ~MainWindow(); // SNIP public methods signals: void testSendQuuid(const QUuid &qcid); public slots: void on_comp_connected(const QUuid &qcid); private: // SNIP private parts QOpenAcnController *acnInt; // This is where the signal comes from }; ``` At the end of the `MainWindow` constructor (the line 143 mentioned) I have: ``` connect(acnInt, SIGNAL(callback_comp_connected(QUuid)), this, SLOT(on_comp_connected(QUuid))); ``` Given that the slot is definitely there in the moc_mainwindow.cpp (I checked, it's slot #1), what on earth could be stopping the connection happening? If I try to connect the `testSendQuuid(QUuid)` signal to the slot, I get no such signal and no such slot as well. I cannot for the life of me figure out why Qt is denying the existence of a slot that is most definitely there!