生成的結果中有庫檔案有:
libprotobuf.lib
libprotobuf-lite.lib
libprotoc.lib
可執行檔案有:
protoc.exe
標頭檔案:
根據提供的extract_includes.bat檔案,提取公共標頭檔案。
二:編寫proto檔案
根據需要,編寫proto檔案。
補充一條:如果想使用libprotobuf-lite.lib(會使二進位制體積小一些),則在.proto檔案的頭部宣告:
option optimize_for = lite_runtime;
三:生成標頭檔案
編寫完proto檔案後,接下來,用protoc.exe生成.h和.cc檔案。
命令如下:
protoc.exe -proto_path=src --cpp_out=dst src/checklist.proto
其中--proto_path指出proto檔案所在的目錄,--cpp_out則是生成的**檔案要放的目錄,最後的乙個引數指出proto檔案的路徑。如上述命令中可以看出,將src目錄下的addressbook.proto編譯後放在dst目錄下,應該會生成checklist.pb.h和checklist.pb.cc檔案
四:notepad++掛接protobuffer**生成器protoc
手動用proto檔案生成.h/.cc檔案比較麻煩,可以借用notepad++的外掛程式一勞永逸
在外掛程式選單nppexec(如果沒有就先裝這個外掛程式)->execute彈出的對話方塊中輸入以下資訊
[cpp]view plain
copy
"protoc.exe"
--cpp_out $(current_directory) --proto_path $(current_directory) $(full_current_path)
protoc.exe的路徑可以自己指定本機的絕對路徑
編譯出的檔案將自動放置到proto檔案所在目錄
d:\dropbox2\dropbox\caffe-windows-ms\windows\thirdparty\bins\protoc.exe --proto_path=d:\dropbox\deeplab_v2-master --cpp_out=d:\dropbox\deeplab_v2-master d:\dropbox\deeplab_v2-master\caffe.proto
五:與工程進行整合
需要把生成的.h和.cc匯入到工程中去,在需要用到資料解析的檔案中,引用該.h檔案。
需要把libprotobuf.lib(或libprotobuf-lite.lib)新增到專案的依賴庫中。
補充一條:一般用vs編的時候,預設需要在.cpp/.cc檔案頭部加預編譯標頭檔案#include "stdafx.h",但這又會修改.cc檔案(原則上生成的.h/.cc檔案不要修改),所以解決的方法就是:在vs的solution explorer中右鍵checklist.pb.cc-->屬性-->預編譯頭(precompiled header)->預編譯頭(precompiled header)-->選擇「不使用預編譯頭」("not using precompiled headers")
六:推薦做法:
建立資料夾pbbuff,在其中建立3個子資料夾:bin,lib,include,其中:
bin 存放proto.exe檔案
lib 存放libprotobuf.lib 檔案
include 存放公共標頭檔案
建立環境變數pbroot,指向pbbuff檔案。把%pbroot%/bin新增到系統的環境變數path中,以便能識別protoc命令。
ruby 生成檔案
1.建立檔案 建立乙個檔案,引數1 檔名,引數2 對檔案的操作,w 讀寫 w 只寫 r 讀寫 r 只寫 f file.new test1.txt w 寫入檔案內容 f.puts test 最後關閉檔案,釋放這個執行緒.f.close 2.指定檔案的路徑 建立路徑path,引數1 檔案的路徑,引數2 ...
Windows MFC dll生成檔案
2009 12 03 21 37 41 分類 c 舉報 字型大小 訂閱 今天接觸了 def檔案,在客戶端工程裡有不少 def檔案,有關 dll匯出的今天就花時間看了看,以前包括現在自己在使用 dll的時候很少用到 dll乙個強大功能,就是跨語言,用 vb做介面呼叫 vc寫的 dll各取所長。以前沒碰...
Scrapy 生成檔案
scrapy應用 一 scrapy框架的應用步驟 1 建立工程 scrapy startproject 工程名稱 2 建立爬蟲 scrapy genspider 檔名稱 spider 二 開發 1 items.py 確定資料採集的屬性 採集項 變數名 scrapy.field title scrap...