encryption/sqlcipher support (4.8 branch)

Rex Dieter rdieter at math.unl.edu
Mon Aug 14 13:22:46 UTC 2017


I've been investigating a feature request for fedora packaging,
https://bugzilla.redhat.com/show_bug.cgi?id=1423441

I presumed this was to enable the sqlcipher plugin, so I worked to provide 
the qt private headers/sources which were required (again, as far as my 
understanding of
kmymoney/plugins/sqlcipher/cmake/modules/FindQSQLiteSource.cmake 
goes.  Now these are all found and detected, but build fails.  I tried 
building against both sqlcipher-3.3.1 and sqlcipher-3.4.1 with the similar 
results (details appended at end).

Any advice?

-- Rex


Linking fails:
[100%] Linking CXX shared library ../../../lib/libsqlcipherdriver.so
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSqlcipherDriverPlugin::qt_static_metacall(QObject*, 
QMetaObject::Call, int, void**)':
/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/sqlcipherdriver_autogen/EWIEGA46WW/moc_qsqlcipherdriverplugin.cpp:45: 
multiple definition of `QSqlcipherDriverPlugin::qt_static_metacall(QObject*, 
QMetaObject::Call, int, void**)'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_qsqlcipherdriverplugin.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSqlcipherDriverPlugin::metaObject() const':
mocs_compilation.cpp:(.text+0x10): multiple definition of 
`QSqlcipherDriverPlugin::metaObject() const'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:moc_qsqlcipherdriverplugin.cxx:
(.text+0x10): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro+0x20): multiple definition of 
`QSqlcipherDriverPlugin::staticMetaObject'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_qsqlcipherdriverplugin.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `SQLCipherDriver::metaObject() const':
mocs_compilation.cpp:(.text+0x30): multiple definition of 
`SQLCipherDriver::metaObject() const'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_sqlcipherdriver.cxx:62: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro.local+0x20): multiple definition of 
`SQLCipherDriver::staticMetaObject'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_sqlcipherdriver.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSQLiteDriver::metaObject() const':
mocs_compilation.cpp:(.text+0x50): multiple definition of 
`QSQLiteDriver::metaObject() const'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx:62: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro+0x0): multiple definition of `QSQLiteDriver::staticMetaObject'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `SQLCipherDriver::qt_static_metacall(QObject*, 
QMetaObject::Call, int, void**)':
mocs_compilation.cpp:(.text+0x70): multiple definition of 
`SQLCipherDriver::qt_static_metacall(QObject*, QMetaObject::Call, int, 
void**)'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_sqlcipherdriver.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSQLiteDriver::qt_static_metacall(QObject*, QMetaObject::Call, 
int, void**)':
mocs_compilation.cpp:(.text+0x80): multiple definition of 
`QSQLiteDriver::qt_static_metacall(QObject*, QMetaObject::Call, int, 
void**)'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSqlcipherDriverPlugin::qt_metacast(char const*)':
mocs_compilation.cpp:(.text+0x90): multiple definition of 
`QSqlcipherDriverPlugin::qt_metacast(char const*)'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:moc_qsqlcipherdriverplugin.cxx:
(.text+0x30): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSqlcipherDriverPlugin::qt_metacall(QMetaObject::Call, int, 
void**)':
mocs_compilation.cpp:(.text+0xe0): multiple definition of 
`QSqlcipherDriverPlugin::qt_metacall(QMetaObject::Call, int, void**)'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:moc_qsqlcipherdriverplugin.cxx:
(.text+0x80): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSQLiteDriver::qt_metacast(char const*)':
mocs_compilation.cpp:(.text+0xf0): multiple definition of 
`QSQLiteDriver::qt_metacast(char const*)'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:moc_qsql_sqlite.cxx:
(.text+0x30): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `SQLCipherDriver::qt_metacast(char const*)':
mocs_compilation.cpp:(.text+0x140): multiple definition of 
`SQLCipherDriver::qt_metacast(char const*)'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:moc_sqlcipherdriver.cxx:
(.text+0x30): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `QSQLiteDriver::qt_metacall(QMetaObject::Call, int, void**)':
/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/sqlcipherdriver_autogen/CEVF5STPWW/moc_qsql_sqlite.cpp:75: 
multiple definition of `QSQLiteDriver::qt_metacall(QMetaObject::Call, int, 
void**)'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:moc_qsql_sqlite.cxx:
(.text+0x80): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o: 
In function `SQLCipherDriver::qt_metacall(QMetaObject::Call, int, void**)':
mocs_compilation.cpp:(.text+0x1a0): multiple definition of 
`SQLCipherDriver::qt_metacall(QMetaObject::Call, int, void**)'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:moc_sqlcipherdriver.cxx:
(.text+0x80): first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro.local+0x0): multiple definition of 
`QSQLiteDriver::staticMetaObjectExtraData'
CMakeFiles/sqlcipherdriver.dir/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/__/__/__/__/__/__/__/usr/src/sql/drivers/sqlite/moc_qsql_sqlite.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro.local+0x40): multiple definition of 
`SQLCipherDriver::staticMetaObjectExtraData'
CMakeFiles/sqlcipherdriver.dir/moc_sqlcipherdriver.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_sqlcipherdriver.cxx:45: 
first defined here
CMakeFiles/sqlcipherdriver.dir/sqlcipherdriver_autogen/mocs_compilation.cpp.o:
(.data.rel.ro.local+0x50): multiple definition of 
`QSqlcipherDriverPlugin::staticMetaObjectExtraData'
CMakeFiles/sqlcipherdriver.dir/moc_qsqlcipherdriverplugin.cxx.o:/home/rdieter/git.kde.org/kmymoney/build/kmymoney/plugins/sqlcipher/moc_qsqlcipherdriverplugin.cxx:45: 
first defined here




More information about the KMyMoney-devel mailing list