QT数据库--添加ODBC驱动插件(Windows、Linux、ARM篇)

QT数据库--添加ODBC驱动插件(Windows、Linux、ARM篇)

http://heyunhuan513.blog.163.com/blog/static/1602042201362921645593/

一、Windows篇 (由于Windows平台添加驱动插件比较简单,从网上找了两个方法,记录如下。PS:本人未验证)

1. 单独编译ODBC驱动源码 D:Qt4.8.4srcpluginssqldriversodbc

qmake -t vclib odbc.pro

nmake

2. 编译ODBC插件,./configure -plugin-sql-odbc

二、Linux篇

1.通过ubuntu software Center下载libqt4-sql-odbc

2.通过命令行方式安装#apt-get install libqt4-sql-odbc

这样既可,有关Windows和linux篇就不在叙述了,网上一堆。可以自己行查找方法。

三、ARM篇(只要介绍此篇,在网上介绍ARM的实在太少了)

1.首先下载ODBC的源码,网址:http://www.unixodbc.org/ 我下载的版本是:unixODBC-2.3.1.tar.gz

2.#tar -zxvf unixODBC-2.3.1.tar.gz

3.#./configure --prefix=/usr/local/unixODBC --enable-gui=no 回车

4.#make

5.#make install

6.退出后,重新命名该文件夹为unixODBC-2.3.1-pc

7.再次解压该软件编译ARM版

8.#tar -zxvf unixODBC-2.3.1.tar.gz

9.#./configure --prefix=/usr/local/unixODBC-arm --enable-gui=no --host=arm-linux 回车

10.#make

11.#make install

到此为止会在/usr/local/生成unixODBC-arm 目录

然后编译QT的ODBC的驱动插件。

#/usr/local/Trolltech/QtEmbedded-4.5.3-arm/bin/qmake "INCLUDEPATH+=/usr/local/unixODBC-arm/include" "LIBS+=-L/usr/local/unixODBC-arm/lib -lodbc" odbc.pro

#make

编译后,会生成libqsqlodbc.so库文件,将此库文件拷贝到ARM板子里。

此处还需要拷贝/usr/local/unixODBC-arm/bin目录下面的libodbcinst.so libodbcinst.so.2 libodbcinst.so.2.0.0 libodbc.so libodbc.so.2 libodbc.so.2.0.0 六个文件到ARM板里。

此时在ARM板里运行测试程序就会看到如下效果

此时添加ODBC到ARM系统里已经完成。

还需要/usr/local/unixODBC-arm/etc 添加odbc.ini odbcints.ini 这两个配置文件

PS:目前系统板支持 SQLite MySQL ODBC 三个驱动


以上方法:

经本人测试,可能自己环境有误,将ODBC的库按照上述方法拷贝到开发板

仍然无法load ODBC。故而自己没有采用ODBC的驱动来实现access数据库,

最终采用SQLite驱动来实现数据库.db的连接


相关资料

ubuntu下 QT 连接各种数据库报错解决(QSqlDatabase: * driver not loaded )

1、 QSqlDatabase: QMYSQL driver not loaded

QSqlDatabase: available drivers: QSQLITE

说明在QT连接mysql数据库时,mysql的数据库驱动没有加载上,实际上就是缺少libqt4-sql-mysql 这个驱动包

解决办法:#sudo apt-get install libqt4-sql-mysql

2、 QSqlDatabase: QPSQL driver not loaded

QSqlDatabase: available drivers: QSQLITE QMYSQL

说明在连接postgresql数据库时,QPSQL驱动没有加载,在你的LD_LIBRARY_PATH库路径中缺少libqt4-sql-psql驱动包

解决办法:# sudo apt-get install libqt4-sql-psql

3、 QSqlDatabase: QODBC driver not loaded

QSqlDatabase: available drivers: QSQLITE QMYSQL QPSQL

说明在连接odbc驱动的数据库时,缺少了libqt4-sql-odbc驱动包

解决办法:# sudo apt-get install libqt4-sql-odbc

4、 QSqlDatabase: * driver not loaded

QSqlDatabase: available drivers: QSQLITE QMYSQL QPSQL

关于这一类的问题,有一个万能的命令,可以将这些包全部装上

# sudo apt-get install libqt4*

不过这样就会装上很多的用不到的包。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部