關於zkpython的安裝方法

2021-07-31 16:29:25 字數 3181 閱讀 2112

最近開發的乙個專案需要用python操作zookeeper,用到了zkpython,這裡備錄一下安裝方法。主要是linux和mac os系統上的安裝。windows上的安裝方法我沒有找到,可能是不支援(有知道的朋友可以分享一下)。

1 linux上的安裝

首先,安裝要依賴的zookeeper的c的客戶端。這裡使用的是3.4.6穩定版,參照如下命令執行即可:

cd zookeeper-3.4

.6/src/c

./configure

make

make install

然後,就可以安裝zkpython了。可以通過pip和原始碼兩種方式安裝:

1)pip安裝方法:

pip install zkpython

#解壓後進入目錄執行以下命令

python setup.py install

然後需要配置一下環境變數,如在/etc/profile檔案中加入下行:

export ld_library_path=/usr/local

/lib/

注意,如果不加環境變數,python在import zookeeper包的時候會報錯:

>>> import zookeeper

traceback (most recent call last):

file "", line

1, in

importerror: libzookeeper_mt.so.2: cannot open shared object file: no such file

ordirectory

2 mac os上的安裝

除了伺服器上安裝部署以外,我本地開發用的是mac,所以在mac上也折騰了一遍。

我先是參考類似linux上的安裝方法,在mac上進行zookeeper 3.4.6版本的c客戶端編譯安裝,但是報錯了:

in file included from ./include/zookeeper.h:34:

./include/recordio.h:76:

9:error: expected ')'

int64_t htonll(int64_t v);

^/usr/include

/sys/_endian.h:

141:25:

note: expanded from macro 'htonll'

#define htonll(x) __darwin_osswapint64(x)

^/usr/include

/libkern/_osbyteorder.h:78:

30:note: expanded from macro '__darwin_osswapint64'

(__builtin_constant_p(x) ? __darwin_osswapconstint64(x) : _osswapint64(x))

^./include/recordio.h:76:

9:note: to match this '('

/usr/include/sys/_endian.h:

141:25:

note: expanded from macro 'htonll'

#define htonll(x) __darwin_osswapint64(x)

^/usr/include

/libkern/_osbyteorder.h:78:

5:note: expanded from macro '__darwin_osswapint64'

(__builtin_constant_p(x) ? __darwin_osswapconstint64(x) : _osswapint64(x))

^in file included from src/zookeeper.c:27:

in file included from ./include/zookeeper.h:34:

./include/recordio.h:76:

9:error: conflicting types for

'__builtin_constant_p'

int64_t htonll(int64_t v);

^/usr/include

/sys/_endian.h:

141:25:

note: expanded from macro 'htonll'

#define htonll(x) __darwin_osswapint64(x)

^/usr/include

/libkern/_osbyteorder.h:78:

6:note: expanded from macro '__darwin_osswapint64'

(__builtin_constant_p(x) ? __darwin_osswapconstint64(x) : _osswapint64(x))

^./include/recordio.h:76:

9:note:

'__builtin_constant_p' is a builtin with type 'int ()'

/usr/include/sys/_endian.h:

141:25:

note: expanded from macro 'htonll'

#define htonll(x) __darwin_osswapint64(x)

^/usr/include

/libkern/_osbyteorder.h:78:

6:note: expanded from macro '__darwin_osswapint64'

(__builtin_constant_p(x) ? __darwin_osswapconstint64(x) : _osswapint64(x))

^2 errors generated.

make[1]: *** [zookeeper.lo] error

1make: *** [all] error

2

後來在網上找了下,確實有這個issue的報告:

接著,按照linux上的方法安裝zkpython即可。

關於Pycharm安裝擴充套件包的方法

關於pycharm安裝擴充套件包的方法 1.pip install 一般的pycharm都自帶有pip,如果沒有,就去下乙個pip的安裝包,將安裝包解壓在python的根目錄,搭建好python的環境,然後用python來安裝pip,基本上就可以在pycharm 的terminal介面或者命令提示介...

的安裝方法 吊頂安裝方法有哪些 吊頂安裝方法詳解

關注惠民家居頻道 如今,不少業主都是初次接觸裝修,對於裝修的流程和施工細節了解的不是很多。這其實是乙個不好的現象,當下的業主還是要掌握一些裝修知識更好。吊頂安裝方法 1 前期施工準備 施工前準備是每個裝修環節都必經的事情。首先,我們要檢查整體結構尺寸和預設圖紙是否相符合,裝置管道有無安裝清楚 吊頂安...

的安裝方法 吊頂安裝方法有哪些,吊頂安裝方法詳解

1 前期施工準備 施工前準備是每個裝修環節都必經的事情。首先,我們要檢查整體結構尺寸和預設圖紙是否相符合,裝置管道有無安裝清楚 吊頂安裝材料和工具是否齊全。2 天花基層處理 基層處理是後期施工質量的保障。我們在施工前要對天花板的頂面情況做乙個清潔處理,使其可達到施工的要求。如果有問題的話,我們可以立...