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: 把cmakefile.txt中的:
add_custom_command(output rpc.pb.cc rpc.pb.h
command protoc
args --cpp_out . $/rpc.proto -i$
depends rpc.proto
verbatim )
修改為絕對路徑
add_custom_command(output rpc.pb.cc rpc.pb.h
command /export/newjpush/fuzheng/proto/bin/protoc
args --cpp_out . $/rpc.proto -i$
depends rpc.proto
verbatim )
在cmakefile.txt中新增:
link_directories("/export/newjpush/fuzheng/proto/lib")
note:
通過檢視flags.make檔案,可以檢視cmake的cxx_flags
注意: 修改cmakefiles.txt之後, 一定要把之前build資料夾全部刪除,否則不會生效,
muduo網路庫編譯安裝
sudo apt get install cmake sudo apt get install libboost dev tar zxf muduo 0.9.1 beta.tar.gz cd muduo build.shcentos系統使用yum install boost devel來安裝libb...
muduo網路庫編譯安裝
2 安裝依賴 sudo apt get install cmake sudo apt get install libboost dev tar zxf muduo 0.9.1 beta.tar.gz cd muduo build.sh centos系統使用yum install boost deve...
voreen編譯步驟
3 修改config default.txt為 config.txt。4 通過vs2008的qt外掛程式開啟voreen.pro。開啟之後編譯如果不成功,繼續下面的步驟。5 開啟vs2008的命令提示,進入到d voreen 2.5目錄,修改 qmake default.bat為 qmake.bat...