Debian8 下面 muduo库编译与使用
其实《Linux 多线程服务端编程》已经写得很详细
但是考虑到代码版本的更新和操作系统的不同
可能部分位置会有些许出入 这里做个记录 方便以后学习运行
我使用的虚拟 安装的是debian系统
版本如下
uname -a
Linux debian 3.16.0-4-686-pae #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) i686 GNU/Linux
1 安装依赖库 sudo apt-get install cmake libboost-dev libboost-test-dev libcurl4-openssl-dev libc-ares-dev protobuf-compiler libprotobuf-dev
2 到https://github.com/chenshuo/muduo/ 此处下载最新的muduo代码
3 解压muduo代码 进入解压后的文件夹
我这里是/home/XXX/Desktop/muduo-master

代码默认是release模式
你可以使用BUILD_TYPE=debug 指定为debug模式
我这里使用默认模式
输入 muduo-master# sudo ./build.sh -j2
成功则显示
[ 98%] Built target protobuf_rpc_resolver_server
[100%] Built target inspector_test
4 使用install指定将头文件和库安装
sudo ./build.sh install
成功则显示
-- Installing: /home/XXX/Desktop/build/release-install/include/muduo/curl/Curl.h
5 使用样例
使用例子可以从https://github.com/chenshuo/muduo-tutorial
下载解压
不过由于头文件和库的安装位置有点变化 我把其中的muduo-tutorial-master/makefile/Makefile文件修改了下
其中
MUDUO_DIRECTORY ?= $(HOME)/build/install
我修改为
/home/XXX/Desktop/build/release-install

Debian8 下面 muduo库编译与使用的更多相关文章
- muduo库的简单使用-echo服务的编写
muduo库的简单使用 muduo是一个基于事件驱动的非阻塞网络库,采用C++和Boost库编写. 它的使用方法很简单,参考这篇文章:TCP网络编程本质论 里面有这么几句: 我认为,TCP 网络编程最 ...
- 将STM32的标准库编译成lib使用【图文】
以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程. 这个编译过程是一个相当慢的过程!完全编译大约需要一支烟的时间.每次建立工程都这么编译,是一个相当浪费时 ...
- 将STM32的标准库编译成lib
转载自:http://www.cnblogs.com/zyqgold/p/3189719.html 以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程. 这 ...
- iOS之 PJSIP静态库编译(三)
dada哪个所有静态库编译完成后还是不能运行那个demo,提示你找不到arm**.a 你lipo后要记得吧合并成.a 名字更改成你最后编译版本生成的.a名字....... 或者吧所有库add到你的工 ...
- iOS之 PJSIP静态库编译(一)
首先放上pjsip官方网站http://www.pjsip.org/download.htm 下载的时候注意while the .bz2 has LF line-ends and is for Uni ...
- C/C++ 跨平台交叉编译、静态库/动态库编译、MinGW、Cygwin、CodeBlocks使用原理及链接参数选项
目录 . 引言 . 交叉编译 . Cygwin简介 . 静态库编译及使用 . 动态库编译及使用 . MinGW简介 . CodeBlocks简介 0. 引言 UNIX是一个注册商标,是要满足一大堆条件 ...
- linux动态库编译和使用详细剖析
引言 重点讲述linux上使用gcc编译动态库的一些操作.并且对其深入的案例分析.最后介绍一下动态库插件技术, 让代码向后兼容.关于linux上使用gcc基础编译, 预编译,编译,生成机械码最后链接输 ...
- 68.vivado与modelsim的关联以及器件库编译
vivado软件中也自带仿真工具,但用了几天之后感觉仿真速度有点慢,至少比modelsim慢挺多的.而modelsim是我比较熟悉的一款仿真软件,固然选它作为设计功能的验证.为了将vivado和mod ...
- C++库编译
C++库编译 1. POCO编译 进入源文件目录,选择相应的VS版本进行编译(build_vs140). 设置系统环境变量: POCO_BASE 2. Boost编译 ####简单编译 在 ...
随机推荐
- C# 日志记录工具类--LogHelper.cs测试
C# 日志记录工具类:(适用于不想使用log4j等第三方的Log工具的时候,希望自己写个简单类实现)LogHelper.cs内容如下: using System; using System.Diagn ...
- 代码: 日期和时间 datepicker
bootstrap 的相关的时间插件 http://www.bootcss.com/p/bootstrap-datetimepicker/ jquery ui的日期插件 http://www.w3cs ...
- leetcode263
public class Solution { private bool Judge(int x) { ) { return false; } int bound = Convert.ToInt32( ...
- 异常信息ASM ClassReader failed to parse class file的问题解决
jdk8与spring 3不兼容问题:用jdk7.或者升级到spring4 详情:异常信息ASM ClassReader failed to parse class file的问题解决
- jquery 隐藏 显示 动画效果
<!DOCTYPE html> <html> <head> <script src="/jquery/jquery-1.11.1.min.js&qu ...
- 怎样在本地windows安装和配置zookeeper
Zookeeper是什么?有什么用? Zookeeper是一个分布式协调服务. 作用:为用户的分布式应用程序提供协调服务. zookeeper在底层其实只提供了两个功能: 1.管理(存储,读取)用户 ...
- canal 监控数据库表 快速使用
https://github.com/alibaba/canal 快速开始 https://github.com/alibaba/canal/wiki/QuickStart 注意 1. vim con ...
- event bManualResult
MSDN: bManualReset [in] If this parameter is TRUE, the function creates a manual-reset event object, ...
- AJAX是什么?
AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). ajax不是新的编程语言,而是一种使用现有标准的新方法.ajax是与服务器 ...
- form表单中的encType属性
enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码,它有三个值 1.application/x-www-form-urlencoded:表单数据被编码为名称/值对.这是默认的编码方式 ...