Ubuntu安装boost,protobuf、moduo

2024-09-03 12:20

本文主要是介绍Ubuntu安装boost,protobuf、moduo,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、Ubuntu安装muduo

muduo库是基于boost开发的,确保先安装了boost(对boost版本有要求),还需要先安装protobufcurl

版本
boost1.70.0
protobuf3.14.0
curl7.74.0
muduo2.0.2

1、Ubuntu安装boost

# 更新资源列表
sudo apt update
# 安装依赖
sudo apt install build-essential python3-dev 
# 下载boost源码1_70_0版本
wget https://boostorg.jfrog.io/artifactory/main/release/1.70.0/source/boost_1_70_0.tar.gz
# 解压并切换到解压后目录
tar -xvzf boost_1_70_0.tar.gz
cd boost_1_70_0
# 安装引导boost
./bootstrap.sh
sudo ./b2 install
sudo ldconfig

测试安装成功

#include <boost/regex.hpp>
#include <iostream>int main() {std::string s = "Boost Libraries";boost::regex expr{"\\w+\\s\\w+"};if (boost::regex_match(s, expr)) {std::cout << "Boost is correctly installed and working!" << std::endl;} else {std::cout << "Boost installation test failed." << std::endl;}return 0;
}

在这里插入图片描述

2、Ubuntu安装protobuf

wget https://github.com/protocolbuffers/protobuf/releases/download/v3.14.0/protobuf-cpp-3.14.0.tar.gz
tar -xzf protobuf-cpp-3.14.0.tar.gz
cd protobuf-3.14.0
# 编译安装
./configure
make
sudo make install
sudo ldconfig

在这里插入图片描述

3、Ubuntu安装curl

wget https://curl.haxx.se/download/curl-7.74.0.tar.gz
tar -xzf curl-7.74.0.tar.gz
cd curl-7.74.0
# 编译并安装
./configure
make
sudo make install
sudo ldconfig

在这里插入图片描述

4、Ubuntu安装muduo

# 依赖
sudo apt update
sudo apt install build-essential cmake
# 下载moduo源码2.0.2版本
wget https://github.com/chenshuo/muduo/archive/refs/tags/v2.0.2.tar.gz
# 解压切换到目录
tar -xvzf v2.0.2.tar.gz
cd muduo-2.0.2
# 新建build目录存放编译文件,防止污染源码
mkdir build
cd build
# cmake编译
cmake -DBUILD_SHARED_LIBS=ON ..
make -j$(nproc)
sudo make install
sudo ldconfig

简单echo服务器测试安装成功

#include <muduo/base/Logging.h>
#include <muduo/net/EventLoop.h>
#include <muduo/net/TcpServer.h>
using namespace muduo;
using namespace muduo::net;void onConnection(const TcpConnectionPtr &conn) {if (conn->connected()) {LOG_INFO << "Connection established: " << conn->peerAddress().toIpPort();} else {LOG_INFO << "Connection closed: " << conn->peerAddress().toIpPort();}
}void onMessage(const TcpConnectionPtr &conn, Buffer *buf,Timestamp receiveTime) {std::string msg(buf->retrieveAllAsString());LOG_INFO << "Received: " << msg;conn->send(msg);
}int main() {Logger::setLogLevel(Logger::INFO);EventLoop loop;InetAddress listenAddr(8888);TcpServer server(&loop, listenAddr, "EchoServer");server.setConnectionCallback(onConnection);server.setMessageCallback(onMessage);server.start();loop.loop();
}

测试结果为连接后,输入什么服务器就会返回什么。在这里插入图片描述

这篇关于Ubuntu安装boost,protobuf、moduo的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1132946

相关文章

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

如何评价Ubuntu 24.04 LTS? Ubuntu 24.04 LTS新功能亮点和重要变化

《如何评价Ubuntu24.04LTS?Ubuntu24.04LTS新功能亮点和重要变化》Ubuntu24.04LTS即将发布,带来一系列提升用户体验的显著功能,本文深入探讨了该版本的亮... Ubuntu 24.04 LTS,代号 Noble NumBAT,正式发布下载!如果你在使用 Ubuntu 23.

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

如何安装 Ubuntu 24.04 LTS 桌面版或服务器? Ubuntu安装指南

《如何安装Ubuntu24.04LTS桌面版或服务器?Ubuntu安装指南》对于我们程序员来说,有一个好用的操作系统、好的编程环境也是很重要,如何安装Ubuntu24.04LTS桌面... Ubuntu 24.04 LTS,代号 Noble NumBAT,于 2024 年 4 月 25 日正式发布,引入了众

Ubuntu 怎么启用 Universe 和 Multiverse 软件源?

《Ubuntu怎么启用Universe和Multiverse软件源?》在Ubuntu中,软件源是用于获取和安装软件的服务器,通过设置和管理软件源,您可以确保系统能够从可靠的来源获取最新的软件... Ubuntu 是一款广受认可且声誉良好的开源操作系统,允许用户通过其庞大的软件包来定制和增强计算体验。这些软件

如何安装HWE内核? Ubuntu安装hwe内核解决硬件太新的问题

《如何安装HWE内核?Ubuntu安装hwe内核解决硬件太新的问题》今天的主角就是hwe内核(hardwareenablementkernel),一般安装的Ubuntu都是初始内核,不能很好地支... 对于追求系统稳定性,又想充分利用最新硬件特性的 Ubuntu 用户来说,HWEXBQgUbdlna(Har

Ubuntu 24.04 LTS怎么关闭 Ubuntu Pro 更新提示弹窗?

《Ubuntu24.04LTS怎么关闭UbuntuPro更新提示弹窗?》Ubuntu每次开机都会弹窗提示安全更新,设置里最多只能取消自动下载,自动更新,但无法做到直接让自动更新的弹窗不出现,... 如果你正在使用 Ubuntu 24.04 LTS,可能会注意到——在使用「软件更新器」或运行 APT 命令时,

python中poetry安装依赖

《python中poetry安装依赖》本文主要介绍了Poetry工具及其在Python项目中的安装和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前言1. 为什么pip install poetry 会造成依赖冲突1.1 全局环境依赖混淆:1