[C++][muduo]1-muduo安装和运行
muduo安装和运行
为补充C++工程知识近期打算学习muduo源码,下面记录muduo源码编译链接及运行过程。
0.版本
操作系统ubuntu 14.04及以上,gcc-8.3.0,cmake-3.13.4
1.安装必要的环境、依赖、工具
安装cmake,boost,curl,protobuf.
sudo apt-get install cmake -y
sudo apt-get install libboost-dev libboost-test-dev -y
sudo apt-get install libcurl4-openssl-dev linc-ares-dev -y
sudo apt-get install protobuf-compiler libprotobuf-dev -y
2.下载源码,这里我们clone到版本0.8.2
git clone -b v0.8.2 https://github.com/chenshuo/muduo.git
3.编译源码,如果顺利的话,在../build/debug/{bin,lib}
中能看到可执行文件和库
cd muduo
./build.sh -j2
4.运行一个样例,在浏览器中键入http://localhost:12345
即可观察到结果
./inspector_test
—————————————————
可能出现的错误及解决方案:
编译链接中可能会出现错误
问题1:.error: cannot convert ‘const boost::shared_ptrmuduo::TimeZone::Data’ to ‘bool’ in return
bool valid() const { return data_; }
方案: 智能指针无法判空,不过这个错误很奇怪,但是可以用下面代码勉强解决它。
bool valid() const
{if (data_)return true;elsereturn false;
}
问题2: error: typedef ‘T_must_be_complete_type’ locally defined but not used [-Werror=unused-local-typedefs]
方案 muduo将编译中出现的warning视为error,如果我们能容忍warning,可以将其取消,即在CMakelists.txt中添加-Wno-unused-local-typedefs
问题3: undefined reference to `google::protobuf::Arena:
[C++][muduo]1-muduo安装和运行相关推荐
- libevent 源码阅读 Ubuntu下muduo库的安装与使用
libevent源码分析--代码结构_鱼思故渊的专栏-CSDN博客 LINUX实战:Ubuntu下muduo库的安装与使用 LINUX实战:Ubuntu下muduo库的安装与使用-LINUX入门-维易 ...
- 在Ubuntu 12.04 64bit上配置,安装和运行go程序
注意: 下面的安装配置均遵从官网或是教材<Go语言程序设计>中的部分内容. 顺便说下,这是一本很难得的Go语言的入门教程,非常基础和全面.起初我因为这本书的封面比较讨厌它,闲置几年之后,一 ...
- flume 1.7在windows下的安装与运行
flume 1.7在windows下的安装与运行 一.安装 安装java,配置环境变量. 安装flume,flume的官网http://flume.apache.org/,下载地址,下载后直接解压即可 ...
- RabbitMQ安装和运行
RabbitMQ在Windows下安装和运行 1.下载Erlang: http://www.erlang.org/downloads/19.2 2.下载Windows版RabbitMq: http:/ ...
- Python3入门笔记(1) —— windows安装与运行
Python3入门笔记(1) -- windows安装与运行 Python的设计哲学是"优雅"."明确"."简单".这也是我喜欢Python ...
- Windows下Go语言的安装和运行
参考:https://blog.csdn.net/SquirrelYuyu/article/details/82776029 Windows下Go语言的安装和运行 文章目录 Go语言的安装与配置 Go ...
- python详细安装教程视频-如何安装Python运行环境Anaconda?(视频教程)
本视频教程针对Windows 7平台,集成3.6版本Python的Anaconda录制. 根据我多次线下编程工作坊获得的反馈经验,发现Python初学者居然在环境安装步骤,就很可能遭受挫折. 如果没有 ...
- vc2005运行库彻底卸载_解决不安装VC运行库(VC2005,VC2008),程序运行出错的方法...
因为VS2005以后程序采用了manifest的生成方式,所以发布的时候要和运行库一起发布.但是我们平时开发和发布的时候如果都要客户安装运行库,那就不太方便了.你可以Microsoft下载:http: ...
- Sublime Text 3(中文)在Windows下的配置、安装、运行
Sublime Text 3(中文)下载.安装.运行! 本文提供全流程,中文翻译. Chinar坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) ...
最新文章
- python 学习之 PythonAdvance2
- 易创课堂上海站干货回顾
- Perturbed Masking:和参数无关的预训练模型分析方法
- yuv420p 详解_Android中的YUV格式解析
- 类加载器 jboss_JBoss AS 7类加载说明
- Pytorch的BatchNorm层使用中容易出现的问题
- nginx tcp代理_nginx 基于tcp/udp代理
- RocketMQ(三)—— 集群模式的说明
- SpringCloud 学习--路由网关
- UI自动化测试之元素定位
- 蓝屏dump分析教程,附分析工具WinDbg(x86 x64)6.12.0002.633下载
- 趋势预测算法大PK!
- 已设定选项 ‘readonly‘ (请加 ! 强制执行)
- kotlin使用StateFlow的collect出错This is an internal kotlinx.coroutines API
- 《智能路由器开发指南》核心笔记(全)——转载的
- Python 如何被证明是 2021 年的转折点语言
- 核桃编程学员对话诺贝尔奖得主 用童心预见未来 探讨人工智能发展
- mysql使用简单教程_Mysql使用简单教程(二)_MySQL
- 基于SPringBoot的玩具销售商城管理系统
- 苹果电容笔和普通电容笔有什么区别?实用平板电脑电容笔推荐
热门文章
- Linux中的tty、pty、pts与ptmx辨析
- “拿下”家乐福中国,苏宁易购全场景零售进入新阶段
- pymssql数据库操作
- 矩阵A可逆,则A的逆矩阵也可逆
- 向日葵连接linux无桌面,向日葵控控远程时无画面显示可能的原因及解决办法
- 微信缓存dat怎么转图片_微信 .dat图片格式转换为.jpg
- OSChina 周五乱弹 —— 性感海星在线翘臀
- ESP8266(ESP-12F)+DS18B20+贝壳物联
- Python黑科技:暴力破解你的密码
- 华为mate40RS能升级鸿蒙,华为mate40rs快速开箱