C muduo 1 muduo安裝和執行

2021-10-06 17:28:38 字數 1576 閱讀 5624

為補充c++工程知識近期打算學習muduo原始碼,下面記錄muduo原始碼編譯鏈結及執行過程。

0.版本

作業系統ubuntu 14.04及以上,gcc-8.3.0,cmake-3.13.4

1.安裝必要的環境、依賴、工具

安裝cmake,boost,curl,protobuf.

sudo

apt-get

install cmake -y

sudo

apt-get

install libboost-dev libboost-test-dev -y

sudo

apt-get

install libcurl4-openssl-dev linc-ares-dev -y

sudo

apt-get

install protobuf-compiler libprotobuf-dev -y

git clone -b v0.8.2
3.編譯原始碼,如果順利的話,在../build/debug/中能看到可執行檔案和庫

cd muduo

./build.sh -j2

4.執行乙個樣例,在瀏覽器中鍵入http://localhost:12345即可觀察到結果

./inspector_test
可能出現的錯誤及解決方案:

編譯鏈結中可能會出現錯誤

問題1:.error: cannot convert 『const boost::shared_ptrmuduo::timezone::data』 to 『bool』 in return

bool valid() const

方案:智慧型指標無法判空,不過這個錯誤很奇怪,但是可以用下面**勉強解決它。

bool

valid()

const

問題2:error: typedef 『t_must_be_complete_type』 locally defined but not used [-werror=unused-local-typedefs]

方案muduo將編譯**現的warning視為error,如果我們能容忍warning,可以將其取消,即在cmakelists.txt中新增-wno-unused-local-typedefs

問題3:undefined reference to `google::protobuf::arena:?…

方案:看到undefined reference…錯誤大概率會想到是鏈結庫在編譯鏈結過程中沒鏈結進去,ok,果然是這個原因,然後在cmakelists.txt中新增動態庫位置,link_directories(/usr/local/lib/),解決之。

muduo網路庫的安裝和使用

一 安裝依賴庫 安裝cmake sudo apt get install cmake 安裝boost sudo apt get install libboost dev libboost test dev 三個非必須的依賴庫 curl c ares dns google protobuf sudo ...

muduo網路庫的安裝 編譯和使用

原文 github專案位址 安裝 安裝cmake sudo apt get install cmake 安裝boost sudo apt get install libboost dev libboost test dev 三個非必須的依賴庫 curl c ares dns google proto...

1 認識和安裝MongoDB MongoDB安裝包

2.配置環境變數 在任何的終端路徑都可以使用 c program files mongodb server 4.0 bin配置到環境變數中 3.安裝好mongodb資料庫後,我們需要啟用服務端才能使用。啟用服務的命令是 mongod。開啟命令列 先開啟執行 快捷鍵win r 然後輸入cmd後回車,就...