Install mysql driver for qt in ubuntu
-
Just install libqt4-sql-mysql package if you use Qt from repository. If you use Qt built from sources, than you need to install mysql-dev headers and libraries and build mysql plugin from src/plugins/sqldrivers/mysql.
-
i followed steps in this url
"http://prres.wordpress.com/2010/05/17/configure-mysql-database-driver-for-qt/":http://prres.wordpress.com/2010/05/17/configure-mysql-database-driver-for-qt/
the first is done perfect but the second step is not working for me. when i do first line in second step it displays this
@-bash: cd/src/plugins/sqldrivers/mysql: No such file or directory@when i checked these directories “/usr/incluce/mysql” and “/usr/lib/mysql” it was present there after doing first steps
[edit: url made clickable / Denis Kormalev]
-
Looks like you've forgotten space and qt path in your command. For example in my system qt sources are in /usr/src/qt, so commands for me will be:
@
cd /usr/src/qt/src/plugins/sqldrivers/mysql
qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient_r" mysql.pro
make
@ -
You need not libraries, but sources. I don't remember if they are distributing with Qt SDK. Look for folder src somewhere in /opt/qt
-
Looks like it can't find mkspecs/features folder (with prf file describing this replace function).
-
As a quick solution you can rebuild Qt library from source :)
Another way:
Look into your built Qt library for file mkspecs/features/qt_functions.prf. If it isn't there copy this file from src folder, it should help I think. -
Where is your Qt instance located?
-
i changed file permissions now it displays this error
"qpluginbase.pri:10: Unknown Replace Function: qtLibraryTarget"[quote author="mkfnx" date="1286424583"]"Failure to open file opt/qtsdk-2010.05/qt/src/plugins/sqldrivers/mysql/MakeFile"
I just saw this error today when I was trying to compile a Qt Example. Verify that you have writing permission in the /opt/qt folder.[/quote]
-
By Qt instance I've meant directory where your Qt libraries lives.
-
ok let me explain this. I install Qt creator in home diractory. and i created new diractory inside home when i was asked to provide a path for installing Qt creator. Inside this Qt directory there are four directories and a file. these are directories "Bin, lib, qt, share" and file named "License". When i get into Qt subdirectory then i found lots of other dirs and there is also another directory with the name of "lib". Now i dont know which lib directory contains Qt Libraries.
-
Then you have two Qt version's? One in the /opt dir and one in your /home? The home version was installed via the Qt installer? If this is the case, your installation is like mine. So here's what I did:
This is what I have:
- Installation Directory /home/mkfnx/qtsdk-2010.05/
- "Qt Directory" /home/mkfnx/qtsdk-2010.05/qt
- MySQL Plugin Directory /home/mkfnx/qtsdk-2010.05/qt/src/plugins/sqldrivers/mysql/
In the MySQL Plugin Directory I have a project file with the configuration to build the MySQL plugin.
Just run qmake to generate the Makefile and then run make to compile the plugin.
If you get an error thath says that mysql.h cannot be found edit the qsql_mysql.h file and change the line #include <mysql.h> for #include <mysql/mysql.h>
When the build succeds move or copy the file libqsqlmysql.so from the MySQL Plugin Directory to /home/mkfnx/qtsdk-2010.05/qt/plugins/sqldrivers
Also make sure that you're using the right Qt version to build your projects. Note that executing the command "qmake" int a terminal, will execute the Qt version that its referenced in the system path, this is probably the version (that I think that you have) installed in /opt. In Qt Creator shouldn't be any problem because it let's you choose the version that you want to use to build, just pick the right one.
That's how it worked for me. Hope to do it for you too.
-
you mean i should run qmake command on plugins.pro inside plugins directory and then make command on this very same file?