I manage to install my custom widget into QtCreator on Windows. I used msvc to compile it, and then put the .dll into the /designer/plugins.I manage to use the widget from the designer from QtCreator then.
However, I still can't figure out why it crashes under MacOS. I haven't found the compiler used for QtCreator and though, I don't manage to make my plugin works. Thank you for your help. 2009/6/2 Jonathan Neuhaus <[email protected]> > Does someone know what is the compiler used for QtCreator on Mac? > I know that in Windows it is msvc and that we should compile our custom > widgets with this compiler to make it works (according to the FAQ). > I may be able to solve the problem using the good compiler. > > Any other thoughts? > > > 2009/6/2 Jonathan Neuhaus <[email protected]> > > Thank you Eike. >> I added my libCustomPenduWidget.dylib in QtCreator/Contents/MacOS/designer >> and then QtCreator crash each time. >> Here is my crash report : >> >> Process: QtCreator [690] >> Path: >> /Developer/Applications/Qt/QtCreator.app/Contents/MacOS/QtCreator >> Identifier: com.nokia.qtcreator >> Version: 1.1.0 (1.1.0) >> Code Type: X86 (Native) >> Parent Process: launchd [120] >> >> Interval Since Last Report: 29537 sec >> Crashes Since Last Report: 1 >> Per-App Interval Since Last Report: 17636 sec >> Per-App Crashes Since Last Report: 1 >> >> Date/Time: 2009-06-02 12:36:08.235 +0200 >> OS Version: Mac OS X 10.5.7 (9J61) >> Report Version: 6 >> Anonymous UUID: 045138E0-8B70-4156-BCD7-B492682EE430 >> >> Exception Type: EXC_CRASH (SIGABRT) >> Exception Codes: 0x0000000000000000, 0x0000000000000000 >> Crashed Thread: 0 >> >> Thread 0 Crashed: >> 0 libSystem.B.dylib 0x95926e42 __kill + 10 >> 1 libSystem.B.dylib 0x9599923a raise + 26 >> 2 libSystem.B.dylib 0x959a5679 abort + 73 >> 3 QtCore 0x1d63d215 >> qt_message_output(QtMsgType, char const*) + 149 >> 4 QtCore 0x1d63d309 qFatal(char const*, ...) + >> 105 >> 5 QtGui 0x1cc348f1 >> QWidgetPrivate::QWidgetPrivate(int) + 801 >> 6 QtGui 0x1cc45596 QWidget::QWidget(QWidget*, >> QFlags<Qt::WindowType>) + 54 >> 7 libCustomPenduWidget.dylib 0x1c3f38c6 >> PenduWidget::PenduWidget(QWidget*) + 50 >> 8 libCustomPenduWidget.dylib 0x1c3f3df1 >> CustomPenduWidget::createWidget(QWidget*) + 41 >> 9 libQtDesigner.4.5.1.dylib 0x1abc35dc >> qdesigner_internal::WidgetFactory::createCustomWidget(QString const&, >> QWidget*, bool*) const + 74 >> 10 libQtDesigner.4.5.1.dylib 0x1abc3b68 >> qdesigner_internal::WidgetFactory::createWidget(QString const&, QWidget*) >> const + 116 >> 11 libQtDesigner.4.5.1.dylib 0x1abc79dc >> qdesigner_internal::WidgetDataBase::defaultPropertyValues(QString const&) + >> 88 >> 12 libQtDesigner.4.5.1.dylib 0x1abc7b96 >> qdesigner_internal::WidgetDataBase::grabDefaultPropertyValues() + 100 >> 13 libDesigner.dylib 0x1aa7bf43 >> Designer::Internal::FormEditorW::fullInit() + 195 >> 14 libDesigner.dylib 0x1aa7e23d >> Designer::Internal::FormEditorW::ensureInitStage(Designer::Internal::FormEditorW::InitializationStage) >> + 129 >> 15 libDesigner.dylib 0x1aa7e276 >> Designer::Internal::FormEditorW::instance() + 24 >> 16 libDesigner.dylib 0x1aa734c9 >> Designer::Internal::FormEditorFactory::createEditor(QWidget*) + 15 >> 17 libCore.dylib 0x00636c82 >> Core::EditorManager::createEditor(QString const&, QString const&) + 872 >> 18 libCore.dylib 0x00639d36 >> Core::EditorManager::openEditor(QString const&, QString const&, >> QFlags<Core::EditorManager::OpenEditorFlag>) + 208 >> 19 libProjectExplorer.dylib 0x1a2fae4e >> ProjectExplorer::Internal::ProjectTreeWidget::openItem(QModelIndex const&) + >> 134 >> 20 libProjectExplorer.dylib 0x1a315df8 >> ProjectExplorer::Internal::ProjectTreeWidget::qt_metacall(QMetaObject::Call, >> int, void**) + 338 >> 21 libQtCore.4.5.1.dylib 0x003e49b9 >> QMetaObject::activate(QObject*, int, int, void**) + 541 >> 22 libQtGui.4.5.1.dylib 0x010e8b85 >> QAbstractItemView::activated(QModelIndex const&) + 61 >> 23 libQtGui.4.5.1.dylib 0x01131c37 >> QTreeView::mouseDoubleClickEvent(QMouseEvent*) + 851 >> 24 libQtGui.4.5.1.dylib 0x00cb1208 QWidget::event(QEvent*) + >> 2394 >> 25 libQtGui.4.5.1.dylib 0x00fe0f45 QFrame::event(QEvent*) + 33 >> 26 libQtGui.4.5.1.dylib 0x0106e7f3 >> QAbstractScrollArea::viewportEvent(QEvent*) + 421 >> 27 libQtGui.4.5.1.dylib 0x010f6020 >> QAbstractItemView::viewportEvent(QEvent*) + 1626 >> 28 libQtGui.4.5.1.dylib 0x0113569e >> QTreeView::viewportEvent(QEvent*) + 580 >> 29 libQtGui.4.5.1.dylib 0x01299510 >> QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) + 48 >> 30 libQtCore.4.5.1.dylib 0x003d3d7a >> QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) + >> 144 >> 31 libQtGui.4.5.1.dylib 0x00c66ca7 >> QApplicationPrivate::notify_helper(QObject*, QEvent*) + 135 >> 32 libQtGui.4.5.1.dylib 0x00c6ff64 >> QApplication::notify(QObject*, QEvent*) + 3348 >> 33 libQtCore.4.5.1.dylib 0x003d3c31 >> QCoreApplication::notifyInternal(QObject*, QEvent*) + 99 >> 34 libQtGui.4.5.1.dylib 0x00c09641 >> QApplicationPrivate::globalEventProcessor(OpaqueEventHandlerCallRef*, >> OpaqueEventRef*, void*) + 4711 >> 35 com.apple.HIToolbox 0x932c911d >> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + >> 1181 >> 36 com.apple.HIToolbox 0x932c855b >> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, >> HandlerCallRec*) + 405 >> 37 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52 >> 38 libQtGui.4.5.1.dylib 0x00c1911f >> QWidgetPrivate::qt_window_event(OpaqueEventHandlerCallRef*, OpaqueEventRef*, >> void*) + 1521 >> 39 com.apple.HIToolbox 0x932c911d >> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + >> 1181 >> 40 com.apple.HIToolbox 0x932c855b >> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, >> HandlerCallRec*) + 405 >> 41 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52 >> 42 com.apple.HIToolbox 0x932f7088 >> ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, >> void*) + 1208 >> 43 com.apple.HIToolbox 0x932c94d6 >> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + >> 2134 >> 44 com.apple.HIToolbox 0x932c855b >> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, >> HandlerCallRec*) + 405 >> 45 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52 >> 46 libQtGui.4.5.1.dylib 0x00c1c1f5 >> QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + >> 589 >> 47 libQtCore.4.5.1.dylib 0x003d3495 >> QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 63 >> 48 libQtCore.4.5.1.dylib 0x003d361b >> QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 149 >> 49 libQtCore.4.5.1.dylib 0x003d4e14 QCoreApplication::exec() + >> 160 >> 50 com.nokia.qtcreator 0x000080ec main + 5008 >> 51 com.nokia.qtcreator 0x00004d1a _start + 216 >> 52 com.nokia.qtcreator 0x00004c41 start + 41 >> >> Thread 1: >> 0 libSystem.B.dylib 0x959086fa select$DARWIN_EXTSN + 10 >> 1 libSystem.B.dylib 0x958ea155 _pthread_start + 321 >> 2 libSystem.B.dylib 0x958ea012 thread_start + 34 >> >> Thread 2: >> 0 libSystem.B.dylib 0x958b92e6 >> semaphore_timedwait_signal_trap + 10 >> 1 libSystem.B.dylib 0x958eb2af _pthread_cond_wait + 1244 >> 2 libSystem.B.dylib 0x95935aab pthread_cond_timedwait + 47 >> 3 libQtCore.4.5.1.dylib 0x002f44f6 >> QWaitCondition::wait(QMutex*, unsigned long) + 274 >> 4 libQtCore.4.5.1.dylib 0x002eb5cb QThreadPoolThread::run() + >> 493 >> 5 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*) >> + 202 >> 6 libSystem.B.dylib 0x958ea155 _pthread_start + 321 >> 7 libSystem.B.dylib 0x958ea012 thread_start + 34 >> >> Thread 3: >> 0 libSystem.B.dylib 0x958f03ca select$DARWIN_EXTSN$NOCANCEL >> + 10 >> 1 libQtCore.4.5.1.dylib 0x003b51f8 QProcessManager::run() + 116 >> 2 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*) >> + 202 >> 3 libSystem.B.dylib 0x958ea155 _pthread_start + 321 >> 4 libSystem.B.dylib 0x958ea012 thread_start + 34 >> >> Thread 4: >> 0 libSystem.B.dylib 0x958e99c6 kevent + 10 >> 1 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*) >> + 202 >> 2 libSystem.B.dylib 0x958ea155 _pthread_start + 321 >> 3 libSystem.B.dylib 0x958ea012 thread_start + 34 >> >> Thread 0 crashed with X86 Thread State (32-bit): >> eax: 0x00000000 ebx: 0x959a5639 ecx: 0xbfffd88c edx: 0x95926e42 >> edi: 0x00000000 esi: 0x00000003 ebp: 0xbfffd8a8 esp: 0xbfffd88c >> ss: 0x0000001f efl: 0x00000286 eip: 0x95926e42 cs: 0x00000007 >> ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037 >> cr2: 0xa06d5880 >> >> >> >> 2009/6/2 Eike Ziller <[email protected]> >> >> >>> On Jun 1, 2009, at 2:17 PM, ext Jonathan Neuhaus wrote: >>> >>> > Hello, >>> > >>> > I am actually trying to integrate a custom widget into QtCreator. >>> > I managed to make it work with Qt Designer, but can't get it work in >>> > QtCreator. >>> > I put the dll (on Windows) / dylib (on MacOS) in 2009.02/bin/ >>> > designer on Windows / QtCreator.app/Contents/MacOS/designer on MacOS. >>> > >>> > >>> > My custom widget uses Qt SDK 4.5.1 and I am using Qt Creator 1.1.0 >>> > (based on Qt 4.5.1) and integration works with Qt Designer (based on >>> > Qt 4.5.1). >>> > >>> > I tried to make it work under Windows XP and Mac OS X 10.5.7, but it >>> > did not work on both. >>> > On XP, the custom widget is not found and is not display in QtCreator. >>> >>> Compiling with msvc should fix it. >>> >>> > >>> > On Mac OS, when I tried to switch to the designer, it just crashes. >>> >>> It would be helpful to see the detailed crash information from >>> CrashReporter (Report..., Problem Details tab), or any other error log >>> (e.g. output on "Console" application). >>> >>> Thanks, Eike >>> >>> -- >>> Eike Ziller >>> Software Engineer >>> Nokia, Qt Software >>> Phone +49 (0)30 6392 3255 >>> Fax +49 (0)30 6392 3256 >>> E-mail [email protected] >>> >>> >>> >>> >>> _______________________________________________ >>> Qt-creator mailing list >>> [email protected] >>> http://lists.trolltech.com/mailman/listinfo/qt-creator >>> >> >> >
_______________________________________________ Qt-creator mailing list [email protected] http://lists.trolltech.com/mailman/listinfo/qt-creator
