使用構建系統時,如何引用其他模組
相比於編譯器,構建系統可以處理更複雜的依賴,多種語言的混合編譯,有些甚至支援雲編譯(把**push到遠方編譯平台,調動編譯集群,再把編譯產物pull回本地),最終交付給我們二進位制檔案(可執行檔案,靜態庫檔案...)。在使用了構建系統時,當我們要引用其他模組**時,不同於以往簡單的import,include就可以,需要額外維護乙份build檔案。下面給出了普通引用,和引用protobuffer結構的例子。
cc_library(
name = '編譯後的library名',
srcs = [
'原始碼',
],hdrs = [
'宣告原始碼的標頭檔案',
],deps = [
'依賴的其他library的絕對路徑:library名',
':依賴的本路徑下其他library名',
],includes = ['.', hdrs中除當前路徑的其他路徑],
copts = [
'-wall',
'-werror',
],linkopts = [
],visibility = ['//visibility:public'],
)
skproto2struct(
name = '***_pb_h',
srcs = [
'***.proto',
],outs = [
'***.pb.cc',
'***.pb.h',
],deps = [
"依賴的其他proto路徑:依賴的其他proto名.proto",
],)
如何檢視某個第三方函式的具體內容
如何檢視第三方資料結構的具體定義
一般通過#include package_nameclient.h或者package_name.pb.h來引用protobuffer資料格式。具體在函式中,
protobuffer package名::message名 自定義變數名;
build內通過skproto2struct宣告,構建系統將對proto生成proto.pb.cc和proto.pb.**件。build內通過宣告cc_library生成protoclient靜態庫,其中hdrs使用到了proto.pb.h, srcs使用到了proto.pb.cc。
如何獲取資料
基本資料結構操作
linux後台開發知識點
csdn部落格日期 2013年7月9日 linux後台開發需要熟練掌握哪些技能呢?cpu wait top swap memory kswap程序 valgrid中malloc free值 呼叫mallinfo輸出當前所佔記憶體 strace p valgrid中access invalid add...
集群開發相關知識點
1 hadoop hdfs hive mapreduce yarn 2 spark spark sql spark streaming mlib graphx spark和hadoop的區別和比較 3 kafka 震驚了!原來這才是kafka!4 elk logstash elasticsearch...
Linux後台C 開發知識點
csdn部落格日期 2013年7月9日 linux後台開發需要熟練掌握哪些技能呢?cpu wait top swap memory kswap程序 valgrid中malloc free值 呼叫mallinfo輸出當前所佔記憶體 strace p valgrid中access invalid add...