Ubuntu虚拟机安装evpp开源库说明

Ubuntu虚拟机安装开源库说明:

EVPP为奇虎360基于libevent开发的现代化的支持C++11特性的高性能网络库,自带TCP/UDP/HTTP等协议的异步非阻塞式的服务器和客户端库。拥有如下特性:

* 现代版的C++11接口
* 非阻塞异步接口都是C++11的functional/bind形式的回调仿函数(不是libevent中的C风格的函数指针)
* 非阻塞纯异步多线程TCP服务器/客户端
* 非阻塞纯异步多线程HTTP服务器/客户端
* 非阻塞纯异步多线程UDP服务器
* 支持多进程模式
* 优秀的跨平台特性和高性能(继承自libevent的优点)

evpp的编译需要依赖如下动态库, 分别介绍如下:

libevent  glog  gtest  gflags  boost evpp

linevent:
 1、window访问: http://libevent.org/libevent-2.0.22.tar.gz, 拷贝到linux机器上
 (或者了Linux wget http://libevent.org/libevent-2.0.22.tar.gz)
 2、tar -zxvf libevent-2.0.22-stable.tzr.gz
 3、cd libevent-2.0.22-stable
 4、./configure --prefix=/usr
 5、make
 6、sudo make install
 7、检查是否安装成功, ls -al /usr/lib | grep libevent

glog:
 1、下载源码: git clone https://github.com/google/glog
 (git clone下载慢可以参考:
  ubuntu上解决访问github慢的方法:
  1、进入终端命令行模式,输入sudo vi /etc/hosts
  2、输入i进入编辑命令,英文输入法输入G,vim编辑器跳到hosts文件的最后一行
  3、用浏览器访问 IPAddress.com 使用 IP Lookup 工具获得github.com和github.global.ssl.fastly.net域名的ip地址
  4、在vi打开的hosts文件中添加如下格式:
   192.30.253.112 github.com
   151.101.44.249  github.global.ssl.fastly.net
  5、esc退出编辑模式,输入:wq,保存hosts文件,修改hosts结束
  6、更新DNS缓存,输入sudo /etc/init.d/networking restart
 )
 2、配置: sudo apt-get install autoconf automake libtool
 3、编译安装:
  进入源码根目录(glog文件夹)
  ./autogen.sh
  ./configure
  make -j 24
  sudo make install

gflags:
 1、下载源码:git clone https://github.com/gflags/gflags
 2、编译安装:
  进入源码目录(即gflags文件夹)
  cmake .
  make -j 24
  sudo make install

gtest:
 1、安装源代码:sudo apt-get install libgtest-dev
 2、编译源代码:
  cd /usr/src/gtest
  $ sudo mkdir build
  $ cd build
  $ sudo cmake ..
  $ sudo make
 3、拷贝生成的库到系统目录下(将生成的libgtest.a 和 libgtest_main.a 拷贝到系统的lib路径下.):
  $ sudo cp libgtest*.a /usr/local/lib

boost:
 使用apt-get直接进行安装: sudo apt-get install libboost-dev
  (这个安装成功了,但是使用失败,应该是包不全,没有boost_system与boost_thread等)
  
 1、下载安装包源码:
  https://www.boost.org/users/download/
 2、解压编译:
  tar -zxvf boost_1_67_0.tar.gz
  cd boost_1_67_0
  ./bootstrap.sh(不用加 --prefix=dir,会默认安装到/usr/local/目录下,成功会生成b2可执行文件)
  
  sudo ./b2 install(时间较长,20分钟)

evpp:
 1、下载源码与子模块源码:
  $ git clone https://github.com/Qihoo360/evpp
  $ cd evpp
  $ git submodule update --init --recursive
 2、编译源码:
  $ mkdir -p build && cd build
  $ cmake -DCMAKE_BUILD_TYPE=Debug ..
  $ make -j(不需要并行编译,直接make就好了,我用make -j的时候虚拟机挂了两次)
 3、运行用例:
  $ make test(这个会跑unittest用例,需要3~5分钟后)
  $ cd evpp/build/bin
  * Run a HTTP client example:

  $ ./example_http_client_request01
  WARNING: Logging before InitGoogleLogging() is written to STDERR
  I0306 11:45:09.464159 13230 inner_pre.cc:37] ignore SIGPIPE
  I0306 11:45:09.464896 13230 client01.cc:30] Do http request
  I0306 11:45:09.493073 13231 client01.cc:14] http_code=200 [ok]
  I0306 11:45:09.493124 13231 client01.cc:16] HTTP HEADER Connection=close
  I0306 11:45:09.493242 13231 event_loop.cc:103] EventLoop is stopping now, tid=140722561709824
  I0306 11:45:09.993921 13231 event_loop.cc:93] EventLoop stopped, tid: 140722561709824
  I0306 11:45:09.994107 13230 client01.cc:38] EventLoopThread stopped.

*** Run a HTTP server example:
    $ ./example_httpecho
  WARNING: Logging before InitGoogleLogging() is written to STDERR
  I0306 12:15:31.703927 21228 inner_pre.cc:37] ignore SIGPIPE
  I0306 12:15:31.706221 21228 http_server.cc:99] http server is running
  *** And in another console(模拟客户端,要在服务器运行的时候):
    $ curl "http://127.0.0.1:9009/echo" -d "Hello, world"
    ello, world

*Run a TCP echo server example:
     $ ./example_tcpecho
  * And in another console(模拟客户端,要在服务器运行的时候):
    $ telnet 127.0.0.1 9099
  Trying 127.0.0.1...
  Connected to 127.0.0.1.
  Escape character is ‘^]‘.

原文地址:https://www.cnblogs.com/wisdomyzw/p/9402440.html

时间: 2024-11-09 08:35:55

Ubuntu虚拟机安装evpp开源库说明的相关文章

ubuntu下安装 openssl 开发库

ubuntu下安装 openssl 开发库 检查是否已安装openssl: sudo apt-get install openssl 如果已安装执行以下操作:sudo apt-get install libssl-devsudo apt-get install libssl0.9.8 Ubuntu 下安装 GTK+ 开发库sudo apt-get install libgtk2.0-dev

ubuntu 下安装32位库 ia32-libs方法

这两天在整Linux系统,要配置JDK,SDK环境,但是SDK配置使用的时候,提示没有权限. 需要安装32位库来解决,还有就是在修改文件的时候提示不能修改.唉...反正就是没有办法正常操作啦 后来根据查找的情况的是因为没有安装32位库原因导致的就开始查找如何,普遍的方法都是用命令安装. 但是提示文件依赖性限制,不能安装. 后来又根据几篇网络文章终于找到方法. 下面就分享出来,以做记录 1.更改权限,在root账户下操作 sudo -i cd /etc/apt/sources.list.d ech

Ubuntu虚拟机安装

曾经多次安装Ubuntu虚拟机,但是都没有将安装遇到的问题进行总计,这次准备搭建hadoop集群,因此又折腾起来.将安装遇到的问题,进行总结. 使用Ubuntu10.04LTS镜像. 安装完成后,先配置成国内更新源 由于默认情况下没有vim可用,因此先用gedit进行文本可视化编辑. sudo gedit /etc/apt/sources.list 将需要的源拷贝进入此list中: ## 163 sources deb http://mirrors.163.com/ubuntu/ trusty

ubuntu 虚拟机安装vmware tools

1.打开ubuntu虚拟机,点击"虚拟机"---> "安装   vmware tools" 2.进入vmware tools光盘,将VMwaretools压缩包复制粘贴到桌面上 粘贴至桌面 3.解压 tar -zxvf VMw...(直接按Tab键) 4.打开解压后的文件夹,右键,在此处打开终端 5.输入 sudo ./vmware-install.pl 6.出现enjoy代表成功   原文地址:https://www.cnblogs.com/bokeyuan

VMware Ubuntu 虚拟机安装 VMwareTools (VMware虚拟机如何与主机互相复制文件)

1.关闭虚拟机 2.CD-ROM开机连接取消对号 3.开启虚拟机 4.此时可能提示安装,点击即可 或者在VMware上方选择 :虚拟机 → 安装VMware Tools 5.虚拟机桌面会弹出相应安装包 6.双击打开如图 6.右键 → 复制到 7.其他位置 → 计算机 8.tmp 文件夹 9.选择 10.然后进入此 tmp 文件夹,空白处右键 → 在终端打开 11.输入 tar -xzvf VMwareTools-10.2.5-8068393.tar.gz (注意:此文件名写自己文件的名字) 12

ubuntu虚拟机安装Gitlab后出现“Whoops, GitLab is taking too much time to respond.”

网上找了很久,有说8080端口被tomcat占用的,但是移除tomcat之后还是会报这个错. https://www.kittell.net/code/gitlab-502-whoops-gitlab-is-taking-too-much-time-to-respond/ 上面这篇文章是说只要运行 sudo gitlab-ctl restart 或者 sudo gitlab-ctl reconfigure 就可以搞定,然而这我里并不行. 后来看到有说是虚拟机装ubuntu的话,内存至少要2G才可

ubuntu下安装nginx依赖库

首先使用dpkg命令查看自己需要的软件是否安装: 查看软件是否安装: 1 dpkg -l | grep pcre 2 dpkg -l | grep zlib 3 dpkg -l | grep openssl 解决依赖包pcre安装,命令: sudo apt-get install libpcre3 libpcre3-dev 解决依赖包zlib安装,命令: sudo apt-get install zlib1g-dev 解决依赖包openssl安装,命令: sudo apt-get install

Ubuntu虚拟机及Petalinux开发平台安装

第一部分 Ubuntu虚拟机安装 所需资源: 1.VMware-workstation_full_12.1.1.6932.exe 2.ubuntu-14.04.3-desktop-amd64.iso 3.互联网 建议在i5以上CPU.8G内存.100GB以上空闲分区的台式电脑安装 一.安装虚拟机软件 (略) 二.新建虚拟机 "文件"-"新建虚拟机"-"自定义(高级)" 中间步骤省略,最终配置如下 "自定义硬件"-"新

ubuntu下安装 openssl&&编译运行测试代码

检查是否已安装 openssl: sudo apt-get install openssl 如果已安装执行以下操作:sudo apt-get install libssl-devsudo apt-get install libssl0.9.8 Ubuntu 下安装 GTK+ 开发库sudo apt-get install libgtk2.0-dev 代码: #include <stdio.h> #include <string.h> #include <openssl/hma