Jetson Nano 编译QT的mysql模块

前言

由于Qt与Mysql使用的开源协议不同,导致QT安装包中不能携带mysql的驱动模块,因此需要自行编译安装。

升级make
  • 下载 make的源码
    • wget https://ftp.gnu.org/gnu/make/make-4.3.tar.gz
  • 解压:tar -xvf make-4.3.tar.gz
  • 安装:
    • cd make-4.3/
    • ./configure
    • make
    • make install
安装cmake
  • sudo apt install cmake
编译安装mysql-connector-c
  • 下载mysql-connector-c
  • 在这里插入图片描述
  • 解压

  • 使用cmake生成makefile
    • cmake ./mysql-connector-c-6.1.11-src/CMakeLists.txt
  • make
  • make install
下载qtbase源码
  • 下载
  • 地址:http://download.qt.io/archive/qt/
    在这里插入图片描述
  • 解压
  • 进入目录
    • cd ./qtbase-opensource-src-5.9.5/src/plugins/sqldrivers/mysql
  • 修改mysql.pro文件
    • 注释QMAKE_USE += mysql
    • 添加DESTDIR = …/mysqldll
    • 添加库 :libmysqlclient.so 所在的位置
  • 执行qmake
  • make
  • make install
问题

qt在编译mysql中遇到

g++ -c -pipe -I/usr/include/mysql -O2 -fvisibility=hidden -fvisibility-inlines-hidden -std=c++0x -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -I/usr/local/include -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtCore/5.5.0 -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtCore/5.5.0/QtCore -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtSql/5.5.0 -I/opt/QtOpenSource55/5.5/Src/qtbase/include/QtSql/5.5.0/QtSql -I../../../../include -I../../../../include/QtSql -I../../../../include/QtCore -I.moc -I../../../../mkspecs/linux-g++ -o .obj/qsql_mysql.o ../../../sql/drivers/mysql/qsql_mysql.cpp
../../../sql/drivers/mysql/qsql_mysql.cpp:36:40: fatal error: QtSql/private/qsqldriver_p.h: No such file or directory
 #include <QtSql/private/qsqldriver_p.h>
                                        ^
compilation terminated.
Makefile:2003: recipe for target '.obj/qsql_mysql.o' failed
make: *** [.obj/qsql_mysql.o] Error 1
解决办法

sudo apt-get install qtbase5-private-dev

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值