爲win10的python安裝protobuf-cpp_implementation

        最近用python版本的protocol buffer解碼數據。發現與C++版本相比,python版本的解碼速度慢很多,已經慢到了無法容忍的地步。因此,在github上查找解決方案。Github上有給出實驗,由python實現的protobuf API速度的確很慢(這裏是測試結果),但也給出了python調用C++庫的解決辦法。linux的安裝步驟很簡單,但卻沒給出windows的安裝步驟。因此,我在windows下安裝成功後,作如下記錄。

一、環境準備

Windows10、Cmake、VS2017、Anaconda配置的python環境

二、步驟

1、下載protobuf python版本的壓縮包

此處下載的版本是protobuf-python-3.11.2.zip

2、Cmake配置工程

(1)設置cmake目錄和build目錄

(2)選擇編譯器:Visual Studio 15 2017 -> x64 -> 點擊Finish

(3)點擊按鍵Configure -> 修改install路徑 -> Generate (注:此處我覺得BUILD_TESTS沒必要,就不勾選了)

二、使用VS2017編譯protobuf

使用VS201打開build目錄,打開項目INSTALL.vcxproj -> 選擇 Release x64 -> 生成

最終在Cmake所設置的install路徑下可以得到下一步所需要的libprotobuf.lib文件。

三、爲python環境安裝protobuf的cpp_implementation

(1)將libprotobuf.lib文件複製到protobuf-3.11.2/python目錄中,將libprotobuf.lib改名爲protobuf.lib

(2)輸入以下命令,即可將python包安裝到當前python的路徑下

python setup.py build --cpp_implementation
python setup.py install --cpp_implementation

以上即是按照步驟。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章