即时通讯项目--(1)环境搭建

我用的环境是Ubuntu20.04

基础工具安装

编辑器安装:

sudo apt-get install vim

编译器安装:

sudo apt-get install gcc g++

调试器安装

sudo apt-get install gdb

项目构建工具安装:

sudo apt-get install make cmake

传输工具安装:

sudo apt-get install lrzsz

版本管理工具安装:

sudo apt-get install git

gflags安装

sudo apt-get install libgflags-dev

gtest安装

sudo apt-get install libgtest-dev

spdlog安装

sudo apt-get install libspdlog-dev

etcd安装

安装Etcd:

sudo apt-get install etcd

启动Etcd服务:

sudo systemctl start etcd

设置Etcd开机自启:

sudo systemctl enable etcd

安装etcd客户端api:etcd-cpp-apiv3

依赖安装:

sudo apt-get install libboost-all-dev libssl-dev

sudo apt-get install libprotobuf-dev protobuf-compiler-grpc

sudo apt-get install libgrpc-dev libgrpc++-dev

sudo apt-get install libcpprest-dev

api框架安装:

git clone https://github.com/etcd-cpp-apiv3/etcd-cpp-apiv3.git

cd etcd-cpp-apiv3

mkdir build && cd build

cmake .. -DCMAKE_INSTALL_PREFIX=/usr

make -j$(nproc) && sudo make install

brpc安装

安装依赖

sudo apt-get install -y git g++ make libssl-dev libprotobuf-dev libprotoc-dev protobuf-compiler libleveldb-dev

安装brpc

git clone https://github.com/apache/brpc.git

cd brpc/

mkdir build && cd build

cmake DCMAKE_INSTALL_PREFIX=/usr .. && cmake --build . -j6

make && sudo make install

Elasticsearch安装

安装curl工具

sudo apt update && sudo apt install curl -y

添加 Elasticsearch GPG 密钥(避免apt-key警告)Elastic 的软件包需要验证签名,必须先导入官方 GPG 密钥。

创建trusted.gpg.d目录(若不存在)

sudo mkdir -p /etc/apt/trusted.gpg.d

导入密钥到指定的keyring文件,避免apt-key警告

curl -s https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --no-default-keyring --keyring gnupg:/etc/apt/trusted.gpg.d/elasticsearch.gpg --import

添加 Elasticsearch 软件源

将 Elastic 官方源写入 Ubuntu 的源列表文件,方便apt安装:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elasticsearch.list

更新软件包列表

sudo apt update

安装指定版本的 Elasticsearch 7.17.21

sudo apt-get install elasticsearch=7.17.21 -y

安装完成后,ES 的默认目录:

  • 配置文件:/etc/elasticsearch/
  • 安装目录:/usr/share/elasticsearch/
  • 日志目录:/var/log/elasticsearch/

启动并检查 ES 服务

启动ES服务

sudo systemctl start elasticsearch

设置开机自启(可选)

sudo systemctl enable elasticsearch

查看ES服务状态

sudo systemctl status elasticsearch.service

cpp-httplib安装

git clone https://github.com/yhirose/cpp-httplib.git

websocketpp安装

sudo apt-get install libboost-dev libboost-system-dev libwebsocketpp-dev

安装完毕后,若在 /usr/include 下有了 websocketpp目录就表示安装成功了

ls /usr/include/websocketpp/

base64 connection.hpp impl sha1

client.hpp endpoint_base.hpp logger transport

close.hpp endpoint.hpp message_buffer uri.hpp

common error.hpp processors utf8_validator.hpp

concurrency extensions random utilities.hpp

config frame.hpp roles version.hpp

connection_base.hpp http server.hpp

redis安装

sudo apt install redis -y

支持远程连接

修改 /etc/redis/redis.conf

• 修改 bind 127.0.0.1 为 bind 0.0.0.0

• 修改 protected-mode yes 为 protected-mode no

启动 Redis 服务

service redis-server start

停止 Redis 服务

service redis-server stop

重启 Redis 服务

service redis-server restart

redis-plus-plus安装

安装 hiredis

sudo apt install libhiredis-dev -y

下载 redis-plus-plus 源码

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

编译/安装 redis-plus-plus

使用 cmake 构建

cd redis-plus-plus

mkdir build

cd build

cmake ..

make

make install # 这一步操作需要管理员权限. 如果是非 root 用户, 使用 sudo make install 执行.

构建成功后, 会在 /usr/local/include/ 中多出 sw 目录, 并且内部包含 redis-plus plus 的一系列头文件.

会在 /usr/local/lib/ 中多出一系列 libredis 库文件.

ODB2.5 版本安装

安装 build2 构建工具:

因为build2安装时,有可能会版本更新,从16变成17,或从17变18,因此注意, 先从build2官网查看安装步骤...

RabbitMQ安装

sudo apt install rabbitmq-server -y

查看 RabbitMQ 服务状态(应显示 active (running))

sudo systemctl status rabbitmq-server

启用 RabbitMQ 管理插件(可选,方便网页管理)

sudo rabbitmq-plugins enable rabbitmq_management

sudo systemctl restart rabbitmq-server

启用管理插件后,可在浏览器访问 http://虚拟机IP:15672,默认用户名 / 密码:guest/guest(仅本机访问有效,若需外部访问需额外配置)。

安装RabbitMQ客户端库

sudo apt-get install librabbitmq-dev

安装RabbitMQ的C++客户端库

• C语言库:https://github.com/alanxz/rabbitmq-c

• C++库: https://github.com/CopernicaMarketingSoftware/AMQP-CPP/tree/master

我们这里使用AMQP-CPP库来编写客户端程序。

安装 AMQP-CPP

sudo apt install libev-dev #libev 网络库组件
git clone https://github.com/CopernicaMarketingSoftware/AMQP-CPP.git

cd AMQP-CPP/

make

make install

相关推荐
Ka1Yan2 小时前
Docker:基本概念与快速入门
运维·docker·容器
Mr'liu3 小时前
MongoDB 7.0 副本集高可用部署
linux·mongodb
文静小土豆3 小时前
Rocky Linux 二进制 安装K8S-1.35.0高可用集群
linux·运维·kubernetes
小技工丨3 小时前
华为TaiShan 200 2280 ARM服务器虚拟化部署完整指南
运维·服务器·arm开发
暮云星影4 小时前
二、linux系统 应用开发:整体Pipeline流程
linux·arm开发
weixin_430750935 小时前
OpenMediaVault debian Linux安装配置企业私有网盘(三) 静态ip地址配置
linux·服务器·debian·nas·网络存储系统
403240735 小时前
[Jetson/Ubuntu 22.04] 解决挂载 exFAT 硬盘报错 “unknown filesystem type“ 及只读权限问题的终极指南
linux·运维·ubuntu
Source.Liu5 小时前
【沟通协作软件】使用 Rufus 制作 Ubuntu 启动盘的详细过程
linux·ubuntu
零意@5 小时前
debian如何把新编译的内核镜像替换原来的内核
运维·debian·更新内核版本·linux内核版本更新·debian更新内核