最近开始学习陈硕的muduo C++ Linux多线程网络库,首先当然是要安装。其间遇到过不少问题,最后不能说都解决了,只能说找到了一条不会遇到什么问题的路线。总结起来是两点:

  • 注意各软件之间要版本匹配。
  • 尽量使用最新版本的软件。

下面是从零开始在虚拟机上安装 Debian 8 以及 muduo 库的过程记录,不算详细,聊作备忘。

1、最小化安装Debian 8

 
通过netinst.iso文件安装,在“软件选择”步骤只选择“标准系统工具”。
 
2、安装桌面
 
桌面不是必需,但会方便很多。村姑与城妹,各有各的美!
 
安装以下软件包:
 
     x-window-system-core gnome-core xinit
 
然后使用startx命令进入桌面环境:
debian8 ~#  startx
 
3、安装开发工具
    
     sudo vim make cmake doxygen graphviz gcc g++
 
 
安装内核头文件,使用以下软件包名(注意 uname -r 两端不是单引号):
     linux-headers-`uname -r`
 
安装内核源码,先查包名:
    apt-cache search linux-source          
例如得到的是 linux-source-3.16,然后安装之。内核源码包在安装 vmware tools 时要用到。
 
4、安装vmware tools
如果vmware workstation版本比较低(如10),那么其自带的vmware-tools-9很可能不能完全支持Debian 8,就需要另行下载高版本的 vmware-tools-10:
 
否则,在编译hgfs模块时很可能遇到问题,例如找不到对应版本的内核头文件。
 
5、安装muduo
 
先安装以下软件包:
 
libboost-all-dev
libprotobuf-dev
protobuf-compiler
libcurl4-openssl-dev
libc-ares-dev
libgd-dev
 
然后从 http://github.com/chenshuo 下载最新版的muduo库(当前是1.0.8)和recipes程序包。
 
muduo安装步骤:
 
    ./build.sh -j2
    ./build.sh install
 
所有可执行文件在 build/release/bin 目录中。
静态链接库在 build/release-install/lib 目录中。
 
6、编译示例程序
 
示例程序源码位于 muduo/examples 中。
如果修改了示例程序,重新编译时要进入 build/release/examples 目录,make 即可。
 
 
 
 

Debian 8 最小化系统安装muduo的更多相关文章

  1. centos7/RHEL7最小化系统安装gnome图形界面

    应用场景:对于比较熟悉linux系统的用户来说,全命令行系统可能来的比较简单明了高效,也存在某些情况下需要有像winodws下弹出对话框的情形需求,或者对于初识linux习惯windows界面的用户来 ...

  2. Centos7最小化系统安装_配置

    本文总结了作者使用centos最小化安装时,碰到的问题和解决方案. 网络问题.作者使用虚拟机安装时,网卡并没有激活.操作: 1 cd /etc/sysconfig/network-script 2 v ...

  3. centos最小化系统安装VMware tool

    1.先执行命令创建环境 yum -y install update yum -y install gcc kernel-headers kernel-devel 2.然后重启reboot 3.挂载,解 ...

  4. cnetos7最小化安装ifconfig命令找不到怎么办

    我们在安装完centos7最小化系统安装完成后,执行ifconfig命令会报命令未找到.实际上在centos7上,使用“ip addr”和“ip link”命令来查找网卡详情.ifconfig命令已经 ...

  5. 最小化Linux系统安装

    安装CentOS 5.9 基于vbox虚拟机,虚拟机内存1 G,虚拟硬盘大小8 G 虚拟网卡使用host only方式 创建卷组centos 独立的boot分区 home, root和swap分区皆是 ...

  6. 安装 NetworkManager(Debian最小化安装)

    Debian最小化安装是没有NetworkManager 1 安装: 2 [root@debian]apt install -y netwok-manager 1 启动(查看网卡): 2 [root@ ...

  7. 生产服务器环境最小化安装后 Centos 6.5优化配置[转]

    内容目录 centos6.5最小化安装后配置网络: IP地址, 网关, 主机名, DNS 更新系统源并且升级系统 系统时间更新和设定定时任 创建普通用户并进行sudo授权管理 修改SSH端口号和屏蔽r ...

  8. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(五)

    25. 安装 Linux Malware Detect (LMD) Linux Malware Detect (LMD) 是 GNU GPLv2 协议下发布的开源 Linux 恶意程序扫描器,它是特别 ...

  9. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(四)码农网

    17. 安装 Webmin Webmin 是基于 Web 的 Linux 配置工具.它像一个中央系统,用于配置各种系统设置,比如用户.磁盘分配.服务以及 HTTP 服务器.Apache.MySQL 等 ...

随机推荐

  1. 新建jsp报错“The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path”

    今天新建jsp文件时,就报错“Visual Page Editor has experimental support for Windows 64-bit”,然后刚好stackoverflow上面有这 ...

  2. EntityFramework基础

    好久没有学习新东西了,最近研究了下EntityFramework,将基础代码贴出来, Entity Framework 利用了抽象化数据结构的方式,将每个数据库对象都转换成应用程序对象 (entity ...

  3. 框架操作DOM和原生js操作DOM比较

    问题引出 对于Angular和React操作DOM的速度,和原生js操作DOM的速度进行了一个比较: 一个同学做的demo 代码如下: <!DOCTYPE html> <html n ...

  4. js获取浏览器窗口可视区域大小

    获得浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条)的方法: 一.对于IE9+.Chrome.Firefox.Opera 以及 Safari: •  window.innerHeight - 浏 ...

  5. C++Builder Berlin 编译

    编译工程,一个单元有错误,就停下了, 能不能把所有单元都编译,一次处理所有单元的错误?

  6. 根据Excel线程句柄得到ID并且关闭进程

    [System.Runtime.InteropServices.DllImport("User32.dll", CharSet = System.Runtime.InteropSe ...

  7. 循序渐进Python3(三) -- 2 -- 内置函数

    上一篇我们介绍了21个最常用到的函数,简单列一下,帮助回忆巩固: 1.abs 2.dict 3.float 4.help 5.input 6.int 7.len 8.list 9.max 10.min ...

  8. 【项目】搜索广告CTR预估(一)

    本文介绍CTR相关基础知识. 一.广告投放系统 广告系统包含多个子系统.除了上图所示的广告投放系统外,还包含商业系统(广告库的获得),统计系统(点击展示日志的获得)等. 广告投放系统主要是面向用户的, ...

  9. struts标签,<s:textfield>嵌套<s:property>的问题

    错误:org.apache.jasper.JasperException: /front/orderList.jsp(110,122) equal symbol expected   <s:te ...

  10. Selenium2+python自动化25-js处理日历控件(修改readonly属性)

    前言 日历控件是web网站上经常会遇到的一个场景,有些输入框是可以直接输入日期的,有些不能,以我们经常抢票的12306网站为例,详细讲解如何解决日历控件为readonly属性的问题. 基本思路:先用j ...