Bug 201125 - Crash on first startup
Summary: Crash on first startup
Status: RESOLVED UPSTREAM
Alias: None
Product: digikam
Classification: Applications
Component: Portability-Runtime (show other bugs)
Version: 1.0.0
Platform: Compiled Sources Other
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-22 18:18 UTC by Uwe Schlifkowitz
Modified: 2022-01-23 05:12 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 7.6.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Uwe Schlifkowitz 2009-07-22 18:18:41 UTC
Version:           1.0.0-beta2 (using KDE 4.2.4)
Compiler:          gcc 4.0.1 i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490)
OS:                OS X
Installed from:    Compiled From Sources

digikam crashes on first startup, i.e. i haven't used digikam on OS X before, no library exists.

Loaded plugins: none

Backtraces:

drkonqi gives the following output:

Attaching to process 20603.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ................................................................................................................................................................... done
0x94e5e851 in __wait4 ()
[Current thread is 1 (process 20603 thread 0x20b)]

Thread 2 (process 20603 thread 0x2603):
#0  0x94e696fa in select$DARWIN_EXTSN ()
#1  0x96c724bf in __CFSocketManager ()
#2  0x94e4b155 in _pthread_start ()
#3  0x94e4b012 in thread_start ()

Thread 1 (process 20603 thread 0x20b):
#0  0x94e5e851 in __wait4 ()
#1  0x94e5e847 in waitpid$UNIX2003 ()
#2  0x02505bc4 in KCrash::startDirectly ()
#3  0x02506a1c in KCrash::defaultCrashHandler ()
#4  <signal handler called>
#5  0x94e87e42 in __kill ()
#6  0x94e87e34 in kill$UNIX2003 ()
#7  0x94efa23a in raise ()
#8  0x94f06679 in abort ()
#9  0x0362e695 in qt_message_output ()
#10 0x0362e769 in qFatal ()
#11 0x028747f9 in QWidgetPrivate::QWidgetPrivate ()
#12 0x02bdbba5 in QFramePrivate::QFramePrivate ()
#13 0x02c6c589 in QAbstractScrollAreaPrivate::QAbstractScrollAreaPrivate ()
#14 0x02c6f9ee in QScrollArea::QScrollArea ()
#15 0x002c315d in Digikam::AssistantDlgPage::AssistantDlgPage (this=0x587aee0, dlg=0xbffff5d4, title=@0xbffff4a4)
    at /Users/uwe/Documents/Dev/digikam-1.0.0-beta2/utilities/firstrun/assistantdlgpage.cpp:64
#16 0x002c421f in Digikam::WelcomePage::WelcomePage (this=0x587aee0, dlg=0xbffff5d4) at /Users/uwe/Documents/Dev/digikam-1.0.0-beta2/utilities/firstrun/welcomepage.cpp:43
#17 0x002c2b54 in Digikam::AssistantDlg::AssistantDlg (this=0xbffff5d4, parent=0x0) at /Users/uwe/Documents/Dev/digikam-1.0.0-beta2/utilities/firstrun/assistantdlg.cpp:76
#18 0x002da019 in main (argc=2, argv=0xbffff788) at /Users/uwe/Documents/Dev/digikam-1.0.0-beta2/digikam/main.cpp:132

then hangs with "Loading backtrace..."

How to reproduce:

on OS X 10.5.7 with Xcode 3.1.2.
Install kdebase4, kdebase4-runtime, kdeedu4, kdegraphics4, kdelibs4, kdepimlibs4, qt4-kde and libusb from MacPorts.
Install libgphoto2 from gphoto.org.
Install digikam-1.0.0-beta2 from digikam.org with "cmake -DCMAKE_BUILD_TYPE=DEBUGFULL -DCMAKE_INSTALL_PREFIX=/opt/local -DQT_QMAKE_EXECUTABLE:FILEPATH=/opt/local/bin/qmake-kde .; make; sudo make install"
run digikam.

Starting kdeinit4.app etc. as suggested on http://www.hyper-world.de/de/2009/04/08/digikam-0100-unter-mac-os-x/ have no effect however.

Expected behaviour:

digikam is expected to start.
Comment 1 caulier.gilles 2009-07-22 19:00:23 UTC
What is that. there is no suitbale backtrace. Run digiKam in GDB to get a suitable backtrace and take a care to compile digiKam with full debug info...

Gilles Caulier
Comment 2 Marcel Wiesweg 2009-07-22 20:18:20 UTC
The backtrace can give us a hint. See the attached source code of QWidgetPrivate constructor. There are two qFatal() messages, one of these causes the abort. The text would probably be output on the console.
In any case, there is some fundamental Qt problem.

[...]
    if (!qApp) {
        qFatal("QWidget: Must construct a QApplication before a QPaintDevice");
        return;
    }

    if (version != QObjectPrivateVersion)
        qFatal("Cannot mix incompatible Qt libraries");
Comment 3 Marcel Wiesweg 2009-11-27 20:32:11 UTC
No response here for a long time, and anyway, probably an upstream issue.