PDA

View Full Version : Does Qt use Sql?



ravas
4th March 2016, 19:40
The project I'm working on doesn't appear to use Sql;
however, when I run macdeployqt it will add
Frameworks/QtSql.framework
PlugIns/sqldrivers
to the APP bundle.

Any ideas on why that happens?
Adding
QT -= sql
to the .pro doesn't change anything.

anda_skoa
4th March 2016, 19:42
Maybe you are depending on something that in turn depends on QSql?

Cheers,
_

ravas
4th March 2016, 21:49
Not that I can find.

Something else I don't understand is macdeployqt outputs:

WARNING: Plugin "libqsqlodbc.dylib" uses private API and is not Mac App store compliant.
WARNING: Plugin "libqsqlpsql.dylib" uses private API and is not Mac App store compliant.
ERROR: no file at "/opt/local/lib/mysql55/mysql/libmysqlclient.18.dylib"
ERROR: no file at "/usr/local/lib/libpq.5.dylib"

Added after 4 minutes:

otool output:

@rpath/QtSvg.framework/Versions/5/QtSvg (compatibility version 5.5.0, current version 5.5.1)
@rpath/QtWidgets.framework/Versions/5/QtWidgets (compatibility version 5.5.0, current version 5.5.1)
@rpath/QtGui.framework/Versions/5/QtGui (compatibility version 5.5.0, current version 5.5.1)
@rpath/QtCore.framework/Versions/5/QtCore (compatibility version 5.5.0, current version 5.5.1)
/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
@rpath/QtPrintSupport.framework/Versions/5/QtPrintSupport (compatibility version 5.5.0, current version 5.5.1)
@rpath/QtHelp.framework/Versions/5/QtHelp (compatibility version 5.5.0, current version 5.5.1)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)

ChrisW67
4th March 2016, 22:24
I am fairly certain that QtHelp uses Sqlite (but not Mysql, ODBC, or Postgresql). You should remove the drivers for database backends other than Sqlite from the sqldrivers that macdeployqt wants to package.

ravas
14th March 2016, 05:33
Chris, you were right.

Removing QtHelp actually drops 3 other frameworks:
- QtCLucene
- QtNetwork
- QtSql

...and also 6 qt plugins.

trishlasingh
21st August 2021, 12:43
Qt SQL is an essential module which provides support for SQL databases. Qt SQL's APIs are divided into different layers: SQL API layer, User interface layer


Regards - [URL removed] SQL Training in Pune

*Edit: URL to commercial site removed. Zero tolerance for spam here.