编译Muduo库出现的错误以及解决方案
Muduo版本号: 1.0.8
错误1: 出现 ‘ld -lpthread not find’ 的错误, 原因是 boost库没有指定, 这个错误提示是最坑的, 错误提示完全不知道是什么意思.
解决方案: 在CMakeLists.txt中加入 boost库的头文件和库文件路径即可
set(BOOST_INCLUDEDIR "/export/newjpush/fuzheng/commonlibs/include")
set(BOOST_ROOT "/export/newjpush/fuzheng/commonlibs/lib")
错误2: 编译example/protobuf/rpc时候, 编译不过.
出现 NewCallBack not defined in the scope.
原因是protobuf库版本不兼容问题. 在机器上已经安装了protobuf, 头文件放在/usr/include 并且已安装的protobuf是 3.0.0
pb3和pb2的头文件不一样, muduo的rpc中使用的是应该是pb2, 导致编译o文件出错。
为了不影响现有的环境, 在不同的目录中安装了pb2
step1;set(Protobuf_INCLUDE_DIRS "/export/newjpush/fuzheng/commonlibs/include")
指定protobuf的头文件路径为新安装的pb2
修改之后, 以为万事大吉, 但是确出现 error显示 生成的pb文件版本跟头文件版本不匹配, 原因是CMake中使用了默认的protoc
step2: 把C