Linux下编译MySQL++/mysqlpp

news2025/1/11 14:27:59

一、简介

MySQL++(又名mysqlpp)是对MySQL和MariaDB C api的c++封装。它建立在与标准c++库相同的规范之上,使得处理数据库与处理std容器一样简单。MySQL++还提供了一些功能,使用户可以在自己的代码中避免最重复的SQL排序,为这些常见任务提供了本地c++接口。


MySQL++官网:https://tangentsoft.com/mysqlpp/wiki?name=MySQL%2B%2B&p&nsm
MySQL++ github:https://github.com/tangentsoft/mysqlpp
MySQL++ Api文档:https://tangentsoft.com/mysqlpp/doc/html/refman/
MySQL++的用户手册:http://www.staroceans.org/documents/mysql++.pdf

二、下载编译MySQL

MySQL++依赖MySQL,所以我们首先得下载MySQL。在https://downloads.mysql.com/archives/community/ 下载MySQL源码。这里推荐下载mysql-boost-XXX.tar.gz,里面带有mysql编译需要依赖的boost源码。mysql-XXX.tar.gz里面是不带boost源码的,还得自己下载boost,比较麻烦。

 下载 mysql编译需要依赖项:

apt-get install libssl-dev
apt-get install libncurses5-dev

将下载下来的mysql-boost-XXX.tar.gz拷贝到Linux系统(比如Ubuntu)中,解压,进入源码目录:

执行命令:

cmake . -DCMAKE_INSTALL_PREFIX=$(pwd)/install -DWITH_BOOST=boost
make
make install

完成后, 即会生成mysql的可执行文件,头文件和库文件。

三、下载编译MySQL++

在 MySQL++: MySQL++ 下载MySQL++源码。

将下载下来的mysql++-XXX.tar.gz拷贝到Linux系统中,解压,进入源码目录:

执行命令:

./configure --prefix=$(pwd)/install --with-mysql=/home/cjc/source/mysql-5.7.35/install/bin --with-mysql-lib=/home/cjc/source/mysql-5.7.35/install/lib --with-mysql-include=/home/cjc/source/mysql-5.7.35/install/include

用参数--with-mysql 指定编译需要依赖的mysql可执行文件的路径。

用参数--with-mysql-lib 指定编译需要依赖的mysql库文件路径。

用参数with-mysql-include 指定编译需要依赖的mysql头文件路径。

然后执行命令:

make
make install

 完成后, 即会生成mysqld++的可执行文件,头文件和库文件。

参考:《mysql++安装》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/482485.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot 整合rabbitMq保证消息一致性方案

rabbitMq介绍 RabbitMQ是一种开源的消息代理软件,它实现了高级消息队列协议(AMQP)标准,可用于在应用程序之间传递消息。RabbitMQ最初由LShift开发,现在由Pivotal Software维护。 RabbitMQ可以在多个平台上运行&#x…

计算机网络笔记:TCP协议 和UDP协议(传输层)

TCP 和 UDP都是传输层协议,他们都属于TCP/IP协议族。 TCP 基本概念 TCP的全称是传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP 是面向连接的、可靠的流协议(流就是指不间断的数据结构) TCP报文格式 TCP报文是…

图神经网络:在Cora上动手实现图神经网络

文章说明: 1)参考资料:PYG官方文档。超链。 2)博主水平不高,如有错误还望批评指正。 3)我在百度网盘上传了这篇文章的jupyter notebook。超链。提取码8888。 文章目录 代码实操1:GCN的复杂实现代码实操2:GCN的简单实现…

C++语言练习题位运算

位运算(01)基础 位运算(02)从一个 16 位的单元中取出某几位 题目描述 从一个 16 位的单元中取出某几位(即该几位保留原值,其余位为 0. 使用 value 存放该 16 位的数,n1 为欲取出的起始位,n2 为欲取出的结束位。&#xff…

thinkphp6 JWT报错 ‘“kid“ empty, unable to lookup correct key‘解决办法

文章目录 JWT简介安装问题先前的代码解决办法修改后的完整代码 JWT简介 JWT全称为Json Web Token,是一种用于在网络应用之间传递信息的简洁、安全的方式。JWT标准定义了一种简洁的、自包含的方法用于通信双方之间以JSON对象的形式安全的传递信息。由于它的简洁性、可…

[论文笔记] In Search of an Understandable Consensus Algorithm (Extended Version)

In Search of an Understandable Consensus Algorithm (Extended Version) 寻找可理解的共识算法 (扩展版) [Extended Paper] [Original Paper] ATC’14 (Original) 摘要 Raft 是一个用于管理复制日志的共识算法. Raft 更易于理解, 且为构建实际的系统提供了更好的基础. Raf…

apache hive release notes

hive release notes位置 https://github.com/apache/hive/blob/master/RELEASE_NOTES.txt 如何查看不同版本的release note

计算机是如何工作的

一、冯诺依曼体系: CPU中央处理器(运算器控制器):CPU是计算机最核心的部分,进行算数运算和逻辑判断。CPU最重要的指标是“主频”,如:2.5Ghz,描述了CPU的运算速度,可以近…

【React】redux和React-redux

🎀个人主页:努力学习前端知识的小羊 感谢你们的支持:收藏🎄 点赞🍬 加关注🪐 Redux和React-redux reduxredux的使用Redux的工作流Redux APIstoreactionreducerstore.dispatch()redux的方法使用 React-Redux…

python人工智能【隔空手势控制鼠标】“解放双手“

大家好,我是csdn的博主:lqj_本人 这是我的个人博客主页: lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm1011.2415.3001.5343哔哩哔哩欢迎关注…

【计算机图形学基础教程】MFC上机操作步骤

MFC上机操作步骤 步骤1 在Visual Studio界面,选择文件-新建-项目: 步骤2 在新建项目对话框,选择MFC-MFC应用程序: 步骤3 创建一个带有下列特征的新控制台工程框架,主要内容如下: 基于Win32的单文档…

PMP/高项 05-项目进度管理

项目进度管理 概念 项目进度管理(Schedule Management) 项目进度管理又叫项目工期管理(Duration Management)或项目的时间管理(Time Management) 是一种为管理项目按时完成项目所需的各个过程 进度管理过程 规划进度管理 定义活动 排列活动顺序 估算活…

前端web3入门脚本五:decode input data

一、前言 作为一个前端,在调用合约调试的时候,在区块浏览器里拿到一串 hex 格式的 input data,我们应该怎么decode呢? 二、举例 解码交易需要拥有 对应合约的 abi 以及 input data 下面举例介绍怎么获得这两个信息: 参…

二叉搜索树中的众数

1题目 给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。 如果树中有不止一个众数,可以按 任意顺序 返回。 假定 BST 满足如下定义&…

存储资源调优技术——智能缓存分区

SmartPratition智能缓存分区 基本概念 本质上就是一种Cache分区技术 通过对系统核心资源的分区(隔离不同业务所需要的缓存资源),保证关键应用的性能 工作原理 用户可以以LUN或文件系统为单位设置SmartPartition分区 每个SmartPartition分区的…

Qt文件系统源码分析—第二篇QSaveFile

范围 深度 首先指定深度分析深度,否者会陷入代码海洋之中。 本文只分析到Win32 API/Windows Com组件/STL库函数层次,再下层代码不做探究 本文主要了解QSaveFile及其具体实现,使用到父类数据的地方只讨论关键点 QT Private类 大部分Qt类有…

基础篇-设计模式

单例模式: 注意:这里的唯一实例不是使用时候才创建,而是构造时候就会创建; 注意:提前创建了对象,并不是调用时候才创建 解决方法: 枚举饿汉单例: 注意: 饿汉式枚举不会通过反序列化破坏单例 懒汉模式&…

SQL笔记(3)——MySQL数据类型

学习MySQL,通常应该是先学习数据类型的,因为不管是开发还是MySQL中,每个数据对象都有其对应的数据类型,MySQL提供了丰富的数据类型,如在创建表的时候就需要指定列的数据类型,在向表中插入数据时&#xff0c…

ElasticSearch(一)下载及安装(windows)

1. 官网 ElasticSearch官网地址ElasticSearch生态组件下载地址Kibana下载地址ik中文分词插件 备注:网址打不开,或者打开速度慢是正常情况。 2. 解压后目录结构 bin :脚本文件,包括启动elasticsearch,安装插件&#…

目录打开显示提示文件或目录损坏且无法读取、文件或目录损坏且无法读取的破解之道

咱们在平日工作时,通常都会将资料放进不同的目录中,方便咱们找到,随着时间的推移就会产生有越来越多目录。最近有位用户了这样一个问题,就是目录无论怎么都无法打开,这样就无法浏览、使用里面的资料了,影响…