Zookeeper C API開發環境配置
Zookeeper C API庫分為單執行緒(zookeeper_st)和多執行緒庫(zookeeper_mt)兩種:
- 單執行緒庫(zookeeper_st):僅提供非同步API和回撥函式;
- 多執行緒庫(zookeeper_mt):支援同步API和非同步API以及回撥,包含一個IO執行緒和一個事件排程執行緒,用於處理連線和回撥。
準備工作
安裝automake、autoconf和cppunit
安裝
如果從Apache中下載的zookeeper-x.x.x.tar.gz包中構建,則直接跳到步驟3。
1)在ZooKeeper的頂級目錄下執行命令:ant compile_jute,將在… / trunk / src / c下建立一個名為“generated”的目錄;
2)切換到目錄… / trunk / src /c下並執行命令:autoreconf -if(引導autoconf,automake和libtool)。 然後跳轉到第4步。
3)【從專案源包構建】解壓源包,並cd到zookeeper-x.x.x/src/c目錄。
4)執行./configure 以生成makefile。 options如下:
–enable-debug:啟用優化和除錯資訊編譯器選項(預設:禁用);
–without-syncapi:禁用同步API支援; 不會構建zookeeper_mt庫(預設:啟用);
–disable-static:不構建靜態庫(預設:啟用);
–disable-shared:不構建共享庫(預設:啟用);
5)執行make 或 make install構建並安裝庫
編譯C客戶端
使用Zookeeper C API的注意事項:
1)需要包含zookeeper標頭檔案:#include <zookeeper/zookeeper.h>
2)若構建多執行緒客戶端,則使用-DTHREADED編譯器標誌進行編譯,然後連結到zookeeper_mt庫;若構建單執行緒客戶端,則不要使用-DTHREADED進行編譯,並確保連結到zookeeper_st庫。