2011-09-23 5 views
0

소스 파일이 나머지 클래스 중 프로젝트에 분명하게 있습니다.Qt가 "moc_MyClass.o"객체 중 하나를 연결하는 것을 "잊어 버렸습니다"

내 Qt 클래스의 나머지 클래스처럼 클래스에 대해 Q_OBJECT가 정의되어 있습니다.

내 수업은 나머지 수업과 함께 컴파일됩니다. 그러나 링커는 클래스의 생성자/소멸자에 대한 vtable에서 실패합니다. 링커 명령 확인 : moc_Myclass.cpp가 생성되거나 생성되지 않는 것 같습니다. 그래서 아무 것도 연결할 수 없습니다.

어떻게 될 수 있습니까? 왜 그게 빠져 있니?

+1

qmake를 사용하는 경우, 가끔 이런 일이 발생합니다. 'make clean & qmake && make'가이를 해결합니다. – Mat

+0

어떤 건물 시스템을 사용하고 있습니까? (qmake, cmake)? 게시 할 수 있습니까? – Maciej

+0

확인 : .pro 파일의 HEADERS 섹션에 MyClass.h가 선언되었습니다. 맞습니까? –

답변

0

해결 방법 : projcet에서 cpp/h 파일을 제거한 다음 클래스에 대한 moc에 다시 추가하면 올바르게 생성되어 링크가 전달됩니다.

분명히 Qt "프로젝트 암"버그지만 적어도 지금은 어떻게 치료할 것인지 잘 알고 있습니다.

관련 문제