Mac系统下编译Oracle的SQL Drivers插件qsqloci

Windows 10/11 零基础配置 SillyTavern 连接 Claude API 完整指南(含 Node.js 环境搭建) 本文提供Windows 10/11系统下零基础配置SillyTavern连接Claude API的完整教程,涵盖Node.js环境搭建、SillyTavern初始化及API连接配置等关键步骤。通过详细的操作指南和实用技巧,帮助用户快速搭建AI聊天界面并优化对话体验,实现与Claude AI的高效交互。 阅读详情

今天编译在Mac下编译了Oracle的SQL驱动插件,这里记录编译过程供参考。

先介绍一下编译环境:Mac OS X 10.7.3, 安装Qt SDK 1.2 for Mac,XCode 4.2.1。

1. 首先是到Oracle的网站上下载相关的库和开发包,按照Qt文档中的说明(How to Build the OCI Plugin on Unix and Mac OS X),需要下载"Instant Client Package - Basic"和"Instant Client Package - SDK"两个包,可以从这里找到要下载的内容。

2. 把下载的zip文件解压到同一个目录下,如Oracle10gClient;

3. 编译。在qt的文档中有两种方法,一个是利用configure生成makefile在执行make,另一种是利用qmake生成makefile再生成。我这里用第一种方法没有成功(原因不详),这里说的是第二种方法:

1)进入Qt源码目录,~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci

2)  执行qmake命令, 按照文档中的说明,执行

qmake "INCLUDEPATH+=[your_oracle_dir]/instantclient_10_2/sdk/include" "LIBS+=-L[your_oracle_dir]/instantclient_10_2 -Wl,-rpath,[your_oracle_dir]/instantclient_10_2" -lclntsh -lnnz10" oci.pro
这里的[your_oracle_dir]需要替换为第2步创建的目录。然后再执行make生成库文件。

在执行时make发现无法找到<QtSql/private/qsqlcachedresult_p.h>这个文件,而实际这个文件在目录中是有的,原因是默认执行qmake时只把二进制的include目录QtSDK/Desktop/Qt/4.8.0/gcc/include这个目录放在INCLUDEPATH中,而这个文件是在源代码目录下,所以会出现无法找到头文件的问题。解决办法是把源代码的include目录在qmake时直接添加进去,也就是执行如下的qmake命令:

qmake "INCLUDEPATH+=[your_oracle_dir]/instantclient_10_2/sdk/include ~/QtSDK/QtSources/4.8.0/include" "LIBS+=-L[your_oracle_dir]/instantclient_10_2 -Wl,-rpath,[your_oracle_dir]/instantclient_10_2" -lclntsh -lnnz10" oci.pro
这样是可以编译成功的,但是在最后link时还有一个错误,无法找到库文件“library not found for -lclntsh”,查找了oracle的安装目录下,确实没有这个文件,但有一个libclntsh.dylib.10.1,猜测这个就是一个动态库,只是版本不同的问题。于是给这个文件做个符号链接,在[your_oracle_dir]目录下执行

ln -s libclntsh.dylib.10.1 libclntsh.dylib
然后再回头去执行make命令,就可以创建成功了。创建后的文件在~/QtSDK/QtSources/4.8.0/src/plugins/sqldrivers/oci目录下,把它们复制到Qt的sqldrivers目录下就可以了。


以上就是整个生成驱动插件的过程。



北斗B1频点信号捕获实战:如何应对NH码跳变带来的挑战? 本文深入探讨了北斗B1频点信号捕获中NH码跳变带来的核心挑战。针对NH码以1kHz速率调制导致的相干积分中断和相关峰畸变问题,文章提出并详细解析了一种基于伪码与多普勒频率分离技术的优化捕获方案。该方案通过差分处理消除NH跳变影响,并利用匹配滤波器与FFT分别进行码相位和多普勒频率的快速估计,有效提升了弱信号环境下的捕获灵敏度和稳定性,为北斗接收机设计提供了实用的工程参考。 阅读详情

相关推荐

loadStop的原因导致的SSUSP

Total内存值是可用来调度的可用内存,当前可用内存为 0M。 loadSched和loadStop的阈值是根据 Total 内存和节点内存来做限制的。 loadStop 50G,现在有大量作业SSUSP,说明之前某个时间点该节点内存可能有低于50G的时候,导致作业SSUSP,具体是否是这个原因引起的需要用 bjobs -l JobID 看下作业的详细信息。 如果是loadStop的原因导致的 SSUSP,根据loadStop设置的阈值,Total 值高于loadStop值后,将逐步恢复挂起的作业

Blueberry521的博客 667

navicat Premium连接Oracle数据库

navicat Premium连接Oracle数据库 最近遇到一个问题,网络上的解决方法也各种各样,有的人用了同样的方法可以解决,有的确不行。这个时候,难免有些懵逼,甚至怀疑人生。这里,我用踩坑的经验来为大家整理一个不会再次踩坑的解决方案。 步骤一 下载navicat prenium工具,自行百度找资源。 步骤二 打开Navicat Premium → 工具 → 选项 → 环境 → 配置 OCI环境。选择instantclient目录下的oci.dll文件。 如果你的Navicat Premium 12下

weixin_40636458的博客 428

HTML5期末大作业:关于家乡介绍的HTML网页设计——郑州美景HTML+CSS(5页) 学生DW家乡介绍网页设计作业成品 web课程设计网页规划与设计

HTML5期末大作业:我的家乡——郑州美景HTML+CSS(5页) 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他 等网页设计题目, A+水平作业, 可满足大学生网页大作业网页设计需求, 喜

qq_365392777 1万+

为Navicat正名,Navicat完全使用手册(上)

点击关注上方“SQL数据库开发”,设为“置顶或星标”,第一时间送达干货之前给小伙伴们推荐一款数据库开发工具DataGrip《干掉Navicat,这个数据库管理工具真香!》最近使用了Dat...

SQL数据库开发 997

DFT与机器学习协同设计高效光催化剂:从电子结构到性能预测

密度泛函理论(DFT)作为计算材料学的基石,通过求解Kohn-Sham方程,能够在原子尺度精确预测材料的电子结构、能带和光学性质,为理解光催化等能源材料的微观机理提供了关键视角。其核心价值在于替代传统试错法,实现材料性能的理性设计与机理揭示。在工程实践中,面对高通量筛选的需求,机器学习(ML)技术,特别是长短期记忆网络(LSTM)这类擅长处理序列数据的模型,能够学习从材料描述符到复杂性能(如光谱)的映射关系,实现快速性能预测与优化。这种DFT与ML的结合范式,正广泛应用于新能源材料、半导体器件等领域,用于高

weixin_30662937的博客 662

STM32CubeMX | HAL库实战:ADC多通道采集模式深度解析(轮询、DMA、TIM触发)

本文深度解析了基于STM32CubeMX与HAL库实现ADC多通道数据采集的三种核心模式:轮询、DMA以及TIM触发DMA。文章通过对比分析,详细阐述了各模式的配置要点、适用场景与潜在陷阱,旨在帮助开发者根据实时性、CPU占用及采样精度等需求,选择并实现高效稳定的多通道数据采集方案。

postgres8guard的博客 972

linux下编译QOCI数据库驱动,基于QT4.7.4

环境: 系统:redhat6.5 x86_64 QT: 4.7.4 oracle: 11.2 编译: 提示:在编译之前需要把qt, oracle都安装好,同时配置好以下环境变量,准备好qt4.7.4的源码。 QTDIR=/usr/local/qt474 ORACLE_HOME=/u01/oracle/app/product/11.2.0/dbhome_1 (1)进入QOCI项目目录 cdqt-everywhere-opensource-src-4.7.4/src/plugins/sqld.

技术成就梦想,梦想成就未来。If you try hard enough, it can be. 1616

两相变频交错PFC实战:从论文理论到PSIM仿真的完整避坑指南

本文详细解析了两相变频交错PFC技术从理论到PSIM仿真的完整实现过程,特别针对CRM模式下的BOOST PFC设计挑战提供实用解决方案。涵盖周期值比较法与RS触发器法的对比实施、PSIM仿真中的过零处理与收敛性优化等核心问题,并给出硬件实现的进阶建议,助力工程师高效完成高功率密度PFC设计。

weixin_30632089的博客 423

qt oracle mingw oci drivers

1.程序目录应该全为英文,不要包含中文 2.采用mingw编译器编译 若采用msvc2008/msvc2010, 则qsqloci(d)4.dll和qcncodecs(d)4.dll也要采用相同的编译器mingw/msvc2008/msvc2010 3.程序目录下   procpath     sqldrivers     codecs     proc.exe     mingw

胡来顺 QtCoder 932

SAPGUI excel 导出时遇到的运行时错误:STRING_SIZE_TOO_LARGE

当报表导出需求远超单一 XLSX 文件的物理承载力时,与其在 SAPGUI 中硬拼 2 GB 限制,不如把分页、过滤、流式写入作为设计前提。掌握 ABAP2XLSX 或 CSV + Power Query 等工具链,既能满足审计合规,又能让应用服务器远离的噩梦。祝你在下一次导出海量数据时,既高效又优雅。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 641

实时数字人SoulX-FlashHead 音视频不对齐解决

【代码】实时数字人SoulX-FlashHead 音视频不对齐解决。

jacke121的专栏 201

菜鸟解读qt源码----qsqlcachedresult.h

#ifndef QSQLCACHEDRESULT_P_H #define QSQLCACHEDRESULT_P_H // // W A R N I N G // ------------- // // This file is not part of the Qt API. It exists for the convenience // of ot...

weixin_33717298的博客 411

共享单车数据抓取与分析:使用Python爬虫抓取共享单车使用数据与地图信息

通过本篇博客,我们展示了如何使用Python爬虫抓取共享单车的使用数据和地图信息,并通过简单的数据分析得出有价值的见解。在实际应用中,数据的收集与分析不仅能帮助城市管理者更好地规划单车站点,还能为用户提供更精准的单车使用体验。未来,我们可以将此分析与机器学习模型相结合,进一步预测单车的使用趋势,优化调度算法,实现更加智能的共享单车管理。

2201_76125261的博客 2204

qtsql oracle oci6,Mac系统下编译Oracle的SQL Drivers插件qsqloci

今天编译在Mac下编译了Oracle的SQL驱动插件,这里记录编译过程供参考。先介绍一下编译环境:Mac OS X 10.7.3, 安装Qt SDK 1.2 for Mac,XCode 4.2.1。1. 首先是到Oracle的网站上下载相关的库和开发包,按照Qt文档中的说明(How to Build the OCI Plugin on Unix and Mac OS X),需要下载"Instant...

weixin_39631953的博客 186

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

在mac上安装oracle客户端

在mac上安装oracle数据库 1. 登入oracle的官网下载页面 http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html 2. 选择适合的版本下载,我选的第一个 (Instant Client Package - Basic) Instant Client Package - Basic: All fi...

web前端学习总结 4万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

mac安装oci8扩展(orache扩展)+连接oracle数据库并使用

一、安装oracle客户端官网网址:http://www.oracle.com/technetwork/topics/intel-macsoft-096467.htmlinstantclient-basic-macos.x64-12.2.0.1.0-2.zip、instantclient-sdk-macos.x64-12.2.0.1.0-2.zip 、instantclient-sqlplus-m...

wuhuagu_wuhuaguo的博客 2608

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Mac下安装Oracle SQLDeveloper,并连接后台服务器的MySQL数据库

    在开发过程中有时候需要添加一些测试数据,每次都让后台人员添加有点麻烦,索性自己找个工具直接连接到后台的测试服务器数据库,自己进行数据的增删改查,是不是感觉挺方便的,那么咱们就开始吧。 Mac下安装Oracle SQLDeveloper,并连接到后台服务器的数据库。   首先,到官网下载对应版本的 Oracle SQL Developer,下载完后,解压缩,将其拖拽到 应用程序(Applic...

大飞哥的专栏 1万+

arm qt mysql插件,关于移植QT的Sqlite数据库到ARM板运行的问题

关于移植QT的Sqlite数据库到ARM板运行的问题运行一般的程序我们的步骤一般是在PC主机上编译,编译成功后交叉编译,然后把程序下载到ARM开发板上,因为主机的交叉编译库和ARM开发板的运行的QT库是一样的,在PC主机交叉编译成功,一般在ARM就可以运行了。但是带sqlite的数据库的QT程序,在PC主机编译没有问题,运行也没有问题,但是交叉编译会出错,报告缺少文件的错。我的ARM交叉库截图,请...

weixin_35895431的博客 327

mac怎么用oracle,MacOS下使用Oracle客户端

前言使用Python进行数据建模时用到Oracle数据库,开发机用的是MacBook。在此之前并没有过Mac下使用Oracle数据库的经历,查过官网资料,配置比较复杂。InstallationInstalling Instant Client 12.2 on macOSInstant Client 12.2 supports macOS High Sierra, Sierra and El Cap...

weixin_34385935的博客 1991

下了mac后oracle进不去,Mac 下Golang连接Oracle以及遇到的坑。。

###一、下载oci和oci sdk下载instantclient-basic和instantclient-sdk两个都解压后,将instantclient-sdk解压出的sdk包放到instantclient-basic出来的目录中最后的目录结构如下: 再次执行如下mv -rf instantclient_12_1 /usr/local #移动到该目录cd /usr/local/instant...

weixin_31942999的博客 392

Mac上的oracle使用

进入docker容器:sudo docker exec -it $(docker ps|grep oracle|cut -d " " -f 1) /bin/bash 通过sqlplus进入Oracle:sqlplus 输入用户名和密码进入 Oracle用户中的默认用户: 超级管理员sys 使用sys登录:sys/密码 as sysdba 使用sys登录后面必须跟as sysdba 管理员system 使用system登录:system/密码 切换用户:conn 用户名/密码 显示当前正在连接的用户是那一个:

Albdon的博客 2649

当利用QT的QSqlQuery查询数据库时,需开启isForwardOnly模式

发现: 最近在利用QSqlQuery查询数据库时,查询的数据量又非常大,因此,当程序执行到某一阶段,程序就崩溃了。 原因: 在每次利用QSqlQuery获取下一条记录时,若不开启isForwardOnly,则每次都开辟新的内存空间,来存储已经访问及未访问的记录,这样,每次都会浪费好多存储空间; 而开启isForwardOnly模式,则每次只存储一条记录。 代码如下(注意*

mafujunfang的专栏 3423

QT学习笔记-QT安装oracle oci驱动

qt工程在编译是默认寻找数据库驱动的路径(注意项目使用的编译套件是MSVC2019_64位的)是:D:\Qt\5.15.2\msvc2019_64\plugins\sqldrivers,因此需要把上一步编译生成的3个文件libqsqloci.a、qsqloci.dll、qsqloci.dll.debug复制到D:\Qt\5.15.2\msvc2019_64\plugins\sqldrivers目录下。编译oci,需要至少2个包,就是Baisc Package、SDK Package。

分享技术,传播知识! 5444

Qt连接oracle数据库 oci驱动qsqloci

Qt连接oracle数据库,oci驱动编译 前段时间项目需要,需连接并获取oracle数据库,查询资源文件在服务器端路径,并下载资源文件到本地进行加载、解析。所以对Qt连Oracle接数据库进行了一番学习,翻阅各种书籍,搜索各种博客,也是下了一番功夫。个把月过去发现快忘了,所以现在进行一下整理。 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown...

obervose的博客 4236

VS2015编译oci驱动文件qsqloci.dll

vs2015编译生成 qsqloci.dll

编程猿来如此 1076

T 6.1.2 生成 oracle QOCI 连接 库

QT 6.1.2 生成 oracle QOCI 连接 库 前提条件 1,本地安装了Oracle数据库或者oracle instant client。 2,安装了Qt6.1.2,并且下载了scr 文件 一,打开,创建内置工程 在qt 安装的目录下,找到src 文件夹下 oci 目录 D:\Qt6\6.1.2\Src\qtbase\src\plugins\sqldrivers\oci 一般来说有个 oci.pro 工程文件。(我这边没有,可能是有5.10 版本的原因,最后copy了一份) 最终主要内容如下:

楚客的学习笔记 990
上一篇: 纪念Borland C++ Builder 6.0
下一篇: 利用QT_DEBUG_PLUGINS检查Qt的插件问题
Lutx
博客等级 码龄25年 50粉丝 41原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值