pbc 的使用

来源:互联网 发布:海牙国际军事法庭 知乎 编辑:程序博客网 时间:2024/05/29 05:02

這兩天在準備lua開發的基本組件。

其中一個重要的部份就是lau要能讀寫字符串數據,即序列化的數據。這樣才能和其他服務做通用處理。

現在通用的序列協議莫過於google的protobuf了。

上網找了一圈,發現lua的protobuf 解析文件都是第三方。有兩種是拿python開發的,問題也還不少。

國內有牛人雲風開發的一個pbc的版本。個人做了基本嘗試,發現python版本的問題多多。2.4和2.5的支持不太一致。


所以調研后還是決定先用pbc來實現。


1. 下載地址 地址为:https://github.com/cloudwu/pbc/

(詳細的工程背景在項目中的文檔有提到,感興趣的人可以深入了解一下)
2. 進入后make
3. 因為要用到lua,所以進入/path/to/download/binding/lua
4. make, 然後把protobuf.so 和 protobuf.lua 拷到python的庫目錄下
問題:
1. 可能會報錯,報﹣fPIC
   解決方案,修改makefile,然後把這個選項放入gcc的編譯選項中
2. macos下,需要修改把shared選項去掉,增加 -bundle -undefined dynamic_lookup
3. 如果出現沒有找到power,floor等鏈接,增加一個 -lm,