Summary: | Digikam doesn't start because of SQL | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Carsten Niehaus <cniehaus> |
Component: | Database-Scan | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | 0.10.0 | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 0.10.0 | |
Attachments: | qtsqlite driver detect during cmake configure of digikam |
Description
Carsten Niehaus
2008-06-29 14:22:42 UTC
Carsten, Install QT4 SQLite3 plugin, and all will be fine. Gilles Caulier libqt4-sql-sqlite works, yes. Shouldn't this be caught by CMake? Well, there is no CMake script to detect Qt4::Sqlite3 plugin. All contribution are welcome.... Gilles Caulier First thing: How to handle this problem if it occurs. It's a runtime dependency, and some time ago it did not crash but the error was detected and a message box displayed. You dont test too often with a broken setup, seems I should do that sometimes. Second: How to avoid the situation. It's clear that distro packages must contain the SQlite plugin as a hard dependency. For compilation, I dont know how to detect Qt plugins. Marcel, Why not to use this staic method at startup: http://doc.trolltech.com/4.3/qsqldatabase.html#isDriverAvailable Just to be sure than Sqlite3 Qt4 DB drivers is available. If not, open a message box to ping user and stop digiKam. Gilles Caulier SVN commit 826363 by mwiesweg: Make sure that initialization errors are passed on to the user. CCBUG: 165318 M +9 -0 scancontroller.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=826363 SVN commit 826364 by mwiesweg: Avoid endless loop when database setup is broken (CollectionManager would create new DatabaseAccess objects, the constructor would again call CollectionManager) BUG: 165318 M +19 -2 databaseaccess.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=826364 Created attachment 25803 [details]
qtsqlite driver detect during cmake configure of digikam
Attached is a tarball containing a svn diff on digikam/CMakeLists.txt as well
as a directory digikam/qtsqlitedrv. Cmake attempts to compile and run the
program in the directory. Success indicates the driver is functional.
The output of this patch has been made “information only” at this time.
Should a modification of this patch make it to svn, the failure of qt-sqlite
driver detection should perhaps cause digikam to not be compiled.
The digikam/qtsqlitedrv/CMakeCache.txt file created by cmake would need to be
removed if a second cmake configure is attempted otherwise false results are
possible. I have not attempted to code this feature.
This was created and seems to work on GNU/Linux Fedora 9 on using an Intel(R)
Core(TM)2 CPU 6600 @ 2.40GHz processor
royboy626
|