gpt4 book ai didi

python - Hyperledger Indy 节点配置错误导致错误,并显示一条消息: "undefined symbol: indy_crypto_init_logger"

转载 作者:太空宇宙 更新时间:2023-11-03 20:42:01 26 4
gpt4 key购买 nike

当您使用 pip 或 pip3 安装 Hyperledger Indy 节点时,您在运行各种节点脚本(例如 init_indy_keys 和 start_indy_node)时会收到此错误。

你会得到类似的输出

回溯(最近一次调用最后一次): 文件“/usr/local/bin/start_indy_node”,第 19 行,位于 client_ip=sys.argv[4], client_port=int(sys.argv[5]))

File "/usr/local/lib/python3.6/dist-packages/indy_node/utils/node_runner.py", line 51, in run_node ha=node_ha, cliha=client_ha)

File "/usr/local/lib/python3.6/dist-packages/indy_node/server/node.py", line 101, in __init__ config=config)

File "/usr/local/lib/python3.6/dist-packages/plenum/server/node.py", line 216, in __init__ self.bls_bft = self._create_bls_bft()

File "/usr/local/lib/python3.6/dist-packages/plenum/server/node.py", line 1131, in _create_bls_bft bls_bft = bls_factory.create_bls_bft()

File "/usr/local/lib/python3.6/dist-packages/crypto/bls/bls_factory.py", line 72, in create_bls_bft bls_crypto_verifier = self._bls_factory_crypto.create_bls_crypto_verifier()

File "/usr/local/lib/python3.6/dist-packages/crypto/bls/bls_factory.py", line 36, in create_bls_crypto_verifier
return self._create_bls_crypto_verifier(group_params)

File "/usr/local/lib/python3.6/dist-packages/plenum/bls/bls_crypto_factory.py", line 24, in _create_bls_crypto_verifier
return BlsCryptoVerifierIndyCrypto(group_params)

File "/usr/local/lib/python3.6/dist-packages/crypto/bls/indy_crypto/bls_crypto_indy_crypto.py", line 67, in __init__
IndyCryptoBlsUtils.bls_from_str(params.g, Generator) # type: Generator

File "/usr/local/lib/python3.6/dist-packages/crypto/bls/indy_crypto/bls_crypto_indy_crypto.py", line 42, in bls_from_str
return cls.from_bytes(bts)

File "/usr/local/lib/python3.6/dist-packages/indy_crypto/bls.py", line 34, in from_bytes
do_call(cls.from_bytes_handler, xbytes, len(xbytes), byref(c_instance))

File "/usr/local/lib/python3.6/dist-packages/indy_crypto/lib.py", line 12, in do_call err = getattr(_cdll(), name)(*args)

File "/usr/local/lib/python3.6/dist-packages/indy_crypto/lib.py", line 22, in _cdll _cdll.cdll = _load_cdll()

File "/usr/local/lib/python3.6/dist-packages/indy_crypto/lib.py", line 51, in _load_cdll getattr(res, "indy_crypto_init_logger")()

File "/usr/lib/python3.6/ctypes/__init__.py", line 361, in __getattr__
func = self.__getitem__(name)

File "/usr/lib/python3.6/ctypes/__init__.py", line 366, in __getitem__
func = self._FuncPtr((name_or_ordinal, self))

AttributeError: /usr/lib/libindy_crypto.so: undefined symbol: indy_crypto_init_logger

这会导致您运行的命令无法成功完成

最佳答案

这是因为node的python库和libindy-crypto库之间的配置不一致。例如,安装 pip3 后,您将拥有 indy-node 1.8.1。但是,您的 libindy-crypto 版本可能是 1.9.0 并且1.9.0 中函数名称更改为 indy_crypto_set_logger。

当您选择使用 pip 安装时,您必须指定 libindy-crypto 库的版本,该版本与您安装的其余部分兼容。

所以不要发出

sudo apt-get install libindy-crypto run this command sudo apt-get install libindy-crypto=0.4.5

您可以在此 URL 找到安装 Indy 节点的完整示例指南: http://193.140.88.19/index.php/bag-hyperledger-indy-agina-katilim/

关于python - Hyperledger Indy 节点配置错误导致错误,并显示一条消息: "undefined symbol: indy_crypto_init_logger",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56806575/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com