brpc编译运行
自百度开源brpc后就一直在关注,看了下brpc都源码,感觉大牛写的果然不一样,由于之前我做c++游戏服务器开发,所以主要看了下网络底层代码,收益颇多,果然一天不学习就要落伍。
现在主要和大家说下我编译运行brpc的过程,省的大家走些弯路。
一、编译器
我本来是在公司找一台测试环境空闲的机器进行编译,但是发现公司的机器都安装的是CentOS 6,自带的g++版本是 4.4.7,不支持c++ 11。(之前不是说百度的科技被三体人锁死了么!)为了不影响公司的机器运行,我就自己在虚拟机安装了 CentOS 7 ,大家如果是CentOS 6想升级g++的话可以参考 https://my.oschina.net/jacktanger/blog/1541584 这篇博客。
二、安装gflags
我编译安装的是 2.0 ,用最新版本貌似静态链接库有点问题。
git clone https://github.com/gflags/gflags.git cd gflags git checkout v2.0 sh autogen.sh ./configure make make install
三、安装protobuf
我编译安装的是 3.0 ,之前没看版本依赖,用最新的protobuf结果提示少了 gzip_stream.h 头文件。
https://github.com/google/protobuf.git cd protobuf git checkout v3.0.0 sh autogen.sh ./configure make make install
四、安装leveldb
git clone https://github.com/google/leveldb.git make sudo cp out-shared/libleveldb.so* /usr/local/lib & sudo cp -R include/* /usr/local/include
五、安装openssl
yum install openssl openssl-devel
六、将/usr/local/lib加入默认系统链接库
echo "/usr/local/lib" >> /etc/ld.so.conf /sbin/ldconfig
七、下载编译brpc
git clone https://github.com/brpc/brpc.git cd brpc sh config_brpc.sh --headers=/usr/local/include --libs=/usr/local/lib make sh tools make_all_examples
八、运行示例
cd example/echo_c++ make ./echo_server & ./echo_client
到这一步就算完成了,我想着是不是要写brpc源码分析,认认真真看下大牛们到代码。