vs編譯安裝protobuf
1.下載
為了以後方便同步,儘量使用git下載原始碼,而不是壓縮包
注:目前已經更新到3.2了,儘量下載最新版本,protobuf3和2還是有一定區別的。
2.安裝需要的其它軟體
安裝cmake和vs
3.通過vs的命令列編譯生成需要的protobuf庫
檢視cmake目錄下的readme檔案(對於英文不好的我真的傷)
具體安裝步驟:
1).解壓:
我解壓到了C:\Users\user\Downloads(用作參考)
2).在解壓的同級目錄中建立一個install目錄
在C:\Users\user\Downloads建立install目錄(用於存放標頭檔案/庫/二進位制檔案)
3).cmake目錄下建立build目錄,build目錄下建立release目錄
在C:\Users\user\Downloads\protobuf-3.2.0\cmake目錄下建立build目錄,使用vs的命令列進入到這個目錄中
4).使用vs的命令列工具進入release目錄,並執行cmake
進入C:\Users\user\Downloads\protobuf-3.2.0\cmake\build\release目錄
執行cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../../../install ../..
注:
1.這一步很關鍵,注意必須是vs的命令列工具
2.-DCMAKE_BUILD_TYPE表示編譯型別,因為涉及到vs的mtd/mt mdd/md這種編譯模式,這個release預設生成的是mt模式的,debug預設是mtd模式的,
不要小看這個,你的protobuf肯定是自己寫程式的時候用的,所以如果你的程式如果必須使用md/mdd編譯的話就需要去改變CMakeLists.txt檔案,選項是set(CMAKE_CXX_FLAGS_RELEASE "/MD") set(CMAKE_CXX_FLAGS_DEBUG "/MDd")
5).執行nmake
在C:\Users\user\Downloads\protobuf-3.2.0\cmake\build\release目錄下執行nmake
6).執行nmake install
在C:\Users\user\Downloads\protobuf-3.2.0\cmake\build\release目錄下執行nmake install
這樣就安裝成功protobuf了,在解壓的同級目錄中的install目錄下存放著需要的lib檔案
安裝的其他方案:
稍微修改3),4)步操作即可
1.生成debug版本
3)步驟修改為cmake目錄下建立build目錄,build目錄下建立debug目錄
4)步驟修改為使用vs的命令列工具進入debug目錄,並執行cmake
執行命令cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=../../../../install ../..
2.生成vs的解決方案sln
3)步驟修改為cmake目錄下建立build目錄,build目錄下建立solution目錄
4)步驟修改為使用vs的命令列工具進入debug目錄,並執行cmake
執行cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=../../../../install ../..
注:-G後面的字串根據vs具體版本填寫,如果只有一個vs,也可以不用寫
可以愉快地去測試一下看是否成功,一般來說只要nmake不報錯就ok了
總結
先看文件,安裝文件在cmake目錄的README.md。這篇文章基本也就是安裝文件的中文版。