Redis——C++库redisplusplus在Linux环境下的安装

server/2024/9/23 22:05:29/

目录

    • 第一步,安装hiredis
    • 第二步,下载redis源码
    • 第三步,编译/安装 redis-plus-plus
    • 使用redis-plus-plus(以Centos为例)
      • Ubuntu的Makefile

redis_1">第一步,安装hiredis

redis-plus-plus 是基于 hiredis 实现的,而hiredis 是⼀个 C 语⾔实现的 redis 客⼾端.,因此需要先安装 hiredis. 直接使⽤包管理器安装即可.
Centos

 yum install hiredis-devel.x86_64

Ubuntu

apt install libhiredis-dev

redis_11">第二步,下载redis源码

git clone https://github.com/sewenew/redis-plus-plus.git

redisplusplus_15">第三步,编译/安装 redis-plus-plus

Centos
Ceotos的cmake版本过低,这里下载cmake3来构建

yum install -y cmake3

用cmake3来构建项目

cd redis-plus-plus
mkdir build
cd build
cmake3 ..
make
make install

Ubuntu

cd redis-plus-plus
mkdir build
cd build
cmake ..
make
make install 

redisplusplusCentos_39">使用redis-plus-plus(以Centos为例)

在使用之前记得检查一下redis服务器启动没有,要先启动服务器

redis-server /etc/redis/redis.conf

Makefile

test:test.ccg++ -std=c++17 -o $@ $^ /usr/local/lib64/libredis++.a /usr/local/lib/libhiredis.a -pthread
clean:rm test

test.cc

#include <iostream>
#include <sw/redis++/redis++.h>
int main()
{sw::redis::Redis redis("tcp://127.0.0.1:6379");auto ret = redis.ping();if(ret) std::cout<<ret<<std::endlreturn 0;
}

在这里插入图片描述

Ubuntu的Makefile

generic: src/generic.ccg++ -std=c++17 -o $@ $^ /usr/local/lib/libredis++.a /lib/x86_64-linux-gnu/libhiredis.a -pthread

Centos和Ubuntu的hiredis保存的库文件位置不一样

  • centos的hiredis静态库保存的位置为

/usr/local/lib/libhiredis.a

  • ubuntu的hiredis静态库保存的位置为

/lib/x86_64-linux-gnu/libhiredis.a


http://www.ppmy.cn/server/121008.html

相关文章

【编程基础知识】Mysql的各个索引数据结构及其适用场景

一、引言 在数据库的世界中&#xff0c;索引是提升查询速度的超级英雄。就像图书馔的目录帮助我们快速找到书籍一样&#xff0c;MySQL中的索引加速了数据检索的过程。本文将带你深入了解MySQL索引的多种数据结构、它们的适用场景以及如何巧妙地使用它们来优化性能。 二、索引…

《SmartX ELF 虚拟化核心功能集》发布,详解 80+ 功能特性和 6 例金融实践

《SmartX ELF 虚拟化核心功能集》电子书现已发布&#xff01;本书详细介绍了 SmartX ELF 虚拟化及云平台核心功能&#xff0c;包含虚机服务、容器服务、网络服务、存储服务、运维管理、工具服务、数据保护等各个方面。 即刻下载电子书&#xff0c;了解如何利用基于 SmartX ELF …

如何确保Redis双删的准确性

为了保证Redis双删一致性的准确性&#xff0c;可以采取以下几种策略&#xff1a; 延时双删策略&#xff1a;在更新数据时&#xff0c;先删除缓存&#xff0c;再更新数据库&#xff0c;然后等待一段时间&#xff08;例如几百毫秒到几秒&#xff09;&#xff0c;再次删除缓存。这…

一文入门生成式AI(理解ChatGPT的原理)

一、什么是生成式AI&#xff1f; 以ChatGPT为代表的生成式AI&#xff0c;是对已有的数据和知识进行向量化的归纳&#xff0c;总结出数据的联合概率。从而在生成内容时&#xff0c;根据用户需求&#xff0c;结合关联字词的概率&#xff0c;生成新的内容。 可以这么联想&#x…

独立游戏《Project:Survival》UE5C++开发日志0——游戏介绍

该游戏是《星尘异变》团队的下一款作品&#xff0c;太空科幻题材的生存游戏&#xff0c;我将负责使用C、蓝图实现游戏的基础框架和核心功能&#xff0c;其中还包含使用人工智能算法助力游戏开发或帮助玩家运营 目前已有功能&#xff1a; 1.3D库存系统&#xff1a;所有库存中的物…

C++在Linux实现多线程和多进程的TCP服务器和客户端通信

多进程版本 服务器 #include <arpa/inet.h> #include <stdlib.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <sys/wait.h> #include <signal.h> #include <string&…

新峰商城之分类三级联动实现

新峰商城是一个开源电子商务网站&#xff08;SpringBoot项目&#xff09;&#xff0c;本文主要简述它的商品分类中三级联动功能的实现。 一、多层级联动效果的常见场景 二、三级联动或者更多层级的数据联动是常见交互方式&#xff0c;它可以提升用户体验&#xff0c;限制用户随…

2.4 数据库表字段约束

一、数据库三大范式 我们构造数据库的时候必须要遵守一定的原则&#xff0c;那这个规则就是范式关系型数据库&#xff0c;一共有六种范式&#xff0c;一般情况下只需要满足第三范式即可。 ​第一范式&#xff1a;原子性构造数据库必须遵循一定的规则&#xff0c;这种规则就是…