当前位置: 首页 > news >正文

天津建设工程协会网站公司宣传片视频怎么做

天津建设工程协会网站,公司宣传片视频怎么做,青岛景点,网站报价明细表QT学习笔记-oracle oci数据库驱动交叉编译并移植到RK3568ARM开发板 0、背景1、搭建交叉编译环境2、交叉编译过程3、把数据库驱动部署到目标系统中 0、背景 在上一文《QT学习笔记-QT安装oracle oci驱动》中介绍了在Windows环境下使用QT访问oracle数据库时遇到驱动无法加载问题的… QT学习笔记-oracle oci数据库驱动交叉编译并移植到RK3568ARM开发板 0、背景1、搭建交叉编译环境2、交叉编译过程3、把数据库驱动部署到目标系统中 0、背景 在上一文《QT学习笔记-QT安装oracle oci驱动》中介绍了在Windows环境下使用QT访问oracle数据库时遇到驱动无法加载问题的解决办法大体思路是对QT源码中数据库驱动的源码oci进行编译要想通过编译需要依赖对应数据库的头文件和库可以通过下载oracle instant client编译通过后就可以把生成的驱动文件放入plugin/sqldrivers的目录下并且把oracle instant cient目录配置到LD_LIBRARY_PATH环境变量中或者在程序中指定oracle instnat client的oci.dll位置就可以正常访问postgresql数据库了。然而要想把oracle oci驱动移植到ARM开发板就需要更复杂的一些步骤本文介绍具体的移植过程。 1、搭建交叉编译环境 由于ARM开发板的内存资源和存储资源以及嵌入式操作系统的限制我们不大可能在ARM开发板的系统上安装QT开发环境以及源码ARM开发板通常作为最终的运行环境。我们用的笔记本或个人PC往往是X86处理器因此在笔记本系统或个人PC中编译的QT程序是无法直接运行在ARM开发板上的。从开发电脑到ARM开发板是有2个关键的变化1是操作系统从Windows变为了Linux2是从X86处理器变为了ARM处理器。这就需要搭建一台交叉编译服务器可以是一台独立的PC或者是虚拟机交叉编译服务器的操作系统要为Linux示意如下 交叉编译环境的搭建主要是获得对应的交叉编译工具链就是在X86处理器上运行的Linux系统中使用交叉编译工具链对X86的Windows下开发的源码进行交叉编译生成基于Arm处理器的Linux系统能够运行的目标程序。 通常我们管X86的Windows开发环境叫开发环境X86的Linux环境叫交叉编译环境Arm的Linux环境叫目标环境或运行环境。最简单搭建交叉编译环境的方式就是直接使用目标开发版操作系统的编译服务器作为交叉编译服务器。不过这个环境一般比较大因为操作系统的源码非常大。要想用一个轻量级的交叉编译环境还是建议自己搭建。 本文后面介绍的是直接采用的操作系统编译服务器作为交叉编译环境的。 2、交叉编译过程 1、我们知道Qt开发的源码要生成可执行程序一般要通过2个步骤 通过qmake生成Makefile通过make对源码进行编译生成动态库和可执行程序 交叉编译的思路首先我们要明白在开发环境中安装qt时自带的qmake是不能作为交叉编译用的因为他生成的Makefile中所采用的gcc和g编译器都是对应x86和windows的。再就是我们如果再交叉编译服务器X86/Linux上直接安装Linux版本的qt的话这个qt自带的qmake也不能作为交叉编译用因为他生成的Makefile中所采用的gcc和g编译器都是对应x86和Linux的。因此我们首先要找到对应目标系统Arm/Linux的qmake才行。 2、我是通过buildroot构建目标操作系统的因为要在目标系统中运行qt的程序因此在构建过程中要把qt的环境编译到目标系统中构建完毕后会在buildroot目录下生成output目标我们可以采用这下面的qmake生成采用交叉编译器的Makefile如下 qmake的目录为SDK/buildroot/output/rockchip_rk3568/host/bin/qmake 其中SDK表示编译目标Linux系统的源码目录 rockchip_rk3568对应的是芯片型号 3、我们先把qt源码部署到交叉编译环境中如下 4、下载oracle instant client 4.1 首先要下载oracleclient因为在编译oci驱动时要依赖oracleclient中的库和头文件。下载地址为 https://www.oracle.com/database/technologies/instant-client/downloads.html 如下图 Oracle Instant Client的下载要根据操作系统版本和Oracle服务器版本匹配才行。我开发环境是Windows10 64位系统因此选择的是Instant Client for Microsoft Windows (x64) 4.2 点击后会出现Oracle Instant Client版本选择如下图 不同的Oracle Instant Client版本支持的Oracle服务器的版本也不相同我用的Oracle服务器版本是11.2这里选择的版本是Version 19.xx.x.x.x我之前下载的是19.19现在截图的时候已经是19.20差别不大。 4.3 可以看到有BasicPackage、SQL*Plus Package、Tools Package、SDK Package、JDBC Supplement Package、ODBC Package等包的下载如下图 4.5 然后把这4个压缩包上传到交叉编译服务器的/opt/oracleclient_arm64/instantclient_19_19这个目录下如下图 4.6 使用unzip命令解压这4个压缩包basic和sdk这2个是必须要解压的如下图 unzip instantclient-basic-linux.arm64-19.19.0.0.0dbru.zip unzip instantclient-sdk-linux.arm64-19.19.0.0.0dbru.zip5、通过vim修改psql.pro工程文件内容注释掉QMAKE_USE psql如下 一定要注意oci在Linux下编译依赖的库为clntsh不同于windows下依赖oci。 然后按ESC输入wq保存退出。 6、然后在oci源码目录下使用交叉编译环境下的qmake生成Makefile如下图 7、输入make命令进行编译如下图 8、编译完毕后会生成libqsqloci.so文件如下图。 目录QtSrc/qtbase/src/plugins/sqldrivers/plugins/sqldrivers 其中QtSrc表示Qt的源码目录。 我这里虽然用的是Qt5.14.2的源码但是我目标系统是Qt5.15.2的运行环境不过这些数据库驱动的代码都没什么变化因此没什么影响。 至此终于生成了支持目标系统Arm/Linux能够识别的数据库驱动库libqsqlpsql.so。 3、把数据库驱动部署到目标系统中 1、首先通过MobaXterm以SSH方式连接到目标系统开发板系统。 2、在/usr/lib/qt/plugins目录下创建目录sqldrivers。 3、把在交叉编译服务器中生成的QtSrc/qtbase/src/plugins/sqldrivers/plugins/sqldrivers/libqsqlpsql.so文件传到目标系统的/usr/lib/qt/plugins/sqldrivers目录下至此目标系统就支持Qt程序对postgresql数据库的访问了。
http://www.hkea.cn/news/14446545/

相关文章:

  • wordpress 评论系统来客seo
  • 网站建设速成策划书中网站制作怎么写
  • 罗源做网站的公司网站开发课设心得
  • 推荐网站建设电子商务营销的优势
  • 探测器 东莞网站建设电脑网站与手机的区别
  • 服务器做网站配置常州企业自助建站系统
  • 做网络写手最好进那个网站城乡建设厅官方网站
  • 旅游网站开发盈利模式网站制作公司 沈阳
  • 门源县住房和城乡建设局网站站长工具永久
  • 网站建设与维护 出题专业做灰色关键词排名
  • 深圳cms建站系统做网站 绑定域名
  • 网站实现微信登录html在线模板
  • 菏泽北京网站建设湖南省建设人力资源网
  • 上海市建设安全协会网站j做个企业网站的公司
  • 网站搭建网站设置友情链接查询结果
  • 威海做网站的哪家好手机qq浏览器解除禁止访问网页
  • 基于jquery做的网站wordpress太卡
  • 珠海网站制作专业wordpress计次查询
  • 东莞市品牌网站建设价格如何优化搜索关键词
  • wordpress网站使用wordpress 安装教程
  • 工程门户网站建设怎么做代刷网网站app
  • 免费网站设计工具如何进行网络推广营销
  • 设计网站页面鉴赏技巧ppt网站开发实现的环境
  • 网站备案号如何查询密码互联网招聘网站
  • 建设官方网站企业登录怎么给产品找关键词
  • 哪个网站可以做验证码兼职邹城市建设局网站
  • 网站研发进度表下载二手车做网站的目的
  • 手机网站如何建站中国商业网点
  • 鲜花网站建设文档手机建网站怎么弄
  • 南京网站建设要多少钱重庆企业网站如何推广