最近开始学习陈硕的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. 剑指Offer:面试题24——二叉搜索树的后序遍历序列(java实现)

    问题描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则返回true,否则返回false.假设输入的数组的任意两个数字都互不相同. 思路: 1.首先后序遍历的结果是[(左子 ...

  2. underscorejs

    Underscore是一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.它是这个问题的答案:“如果我在一个空白的HTML页面前坐下, 并希 ...

  3. dedecms代码研究三

    上次,我们从dedecms的index.PHP文件中了解到了很多信息,也提出了一些问题: 1)加载了/include/common.inc.php,里面做了哪些工作? 2)/include/arc.p ...

  4. jquery radio取值,checkbox取值,select取值及选中

    jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关 获取一组radio被选中项的值 var item = $('in ...

  5. Failed to load the JNI shared library jvm.dll

    jdk和使用的ide版本不符合,换一个版本的jdk或者换版本的ide

  6. 学习笔记—Fragement +Actionbar

    这里实现的是tabhost类型的菜单选项,还有下拉菜单选项的 http://www.cnblogs.com/hanyuan/archive/2012/04/11/android_actionbar_a ...

  7. jquery ajax load

    jQuery load() 方法 jQuery load() 方法是简单但强大的 AJAX 方法. load() 方法从服务器加载数据,并把返回的数据放入被选元素中. 语法: $(selector). ...

  8. Linux与Windows API对比

    对象 操作 Linux API Windows API 线程 创建 pthread_create() CreateThread() 退出 pthread_exit() ThreadExit() 等待 ...

  9. 计算机病毒实践汇总二:bufferzone沙盘使用体验

    在尝试学习分析的过程中,判断结论不一定准确,只是一些我自己的思考和探索.敬请批评指正! 1. 安装bufferzone及其简单使用 (1)安装BufferZone BufferZone的msi安装文件 ...

  10. Prefab强制使用文本模式

    [Prefab强制使用文本模式] Edit -> ProjectSetting -> Editor: