1 grpc的學習文檔改成了另一篇quickstart,
grpc入門文檔
然後使用的是linux虛擬機和macOS並行的模式,後來linux虛擬機順利執行了,但是一個make -j指令讓兩個電腦都down了,因為mac是16g內存了,已經算是最大的了,就只能查看make -j指令的含義,發現-j4使用雙核並行編譯,而-j不知道是何物。之後按照步驟編譯完成,並運行了helloword,並簡單修改helloword(新增一個helloagain函數)。
2 然後要熟悉grpc就需要自己寫一個程序,然後使用grpc的庫,然後編譯通過並運行才可以,這樣就發生了第二個問題,我還不會makefile。於是先學習makefile。學習之前,朋友建議我先看一下linux的目錄結構,於是看了一兩遍目錄結構。
3 makefile學習的連結是這個,
makefile入門
如果不懂編譯的過程可以先了解一下編譯原理中的編譯的過程(從代碼到可執行程序的過程),makefile官方的文檔也可以讀一下(熟悉一下原理一些關鍵字等),但是最重要的是可以動手寫一個最簡單的,有所體會才行,所以我找到這個個人覺得是最好上手的,然後自己寫了一個最簡單的makefile,默記結構和原理,然後在這個連接記一下其他的規則就可以了。然後我對這第二個連接看grpc 的helloworld的makefile文件,
makefile詳細文檔
一行一行看,又重新熟悉一下linux 的一些內容同時,大概看懂了makefile的結構之後
4 自己建構一個小項目,並用makefile編譯grpc的庫和程序:
A 在examples下面的cpp文件夾下新建一個test文件夾,把同目錄的helloword的greeter_client.cc 和greeter_server.cc 以及makefile拷進test文件夾
B 修改makefile文件的內容:把所有helloworld相關的替換成test,把用不到的.cc的編譯句子全部刪了(因為我們還有兩個.cc,其他三個用不到,所以其他三個的編譯不需要),保存
C 在這個目錄下terminal,make一下,發現報錯,找不到一些.o文件
D 發現是因為有一個CMakefileLists.txt中才包含了這些.o文件的,然後了解到因為makefile寫起來很麻煩,所以用了可以生成makefile文件的cmake,所以學習cmake
5 學習cmake,最好的連結是這個,
cmake入門
也是最容易上手的,直接上手寫一個CMakefileLists.txt,最有體會,確實比makefile要精簡很多。繼續
E 把helloword下面的CMakefileLists.txt也考到test中,修改其中helloword為test,把不用的三個.cc的編譯句子刪掉。
F 在test目錄,打開終端,輸入cmake … (camke當前目錄)。然後大功告成,可以執行一下server和client可執行程序。
總結,這樣之後就可以自己寫一些代碼,然後使用這個CMakefileLists.txt的模板進行編譯了。離達到熟悉grpc的目的還差一步,那就是模擬的寫一個模塊,實現它的api。
從零開始學grpc
最新推荐文章于 2024-07-15 15:17:48 发布