Cfgrib没有通过pip正确安装在WSL2上



我正在尝试将cfgrib安装到我的WSL2 Ubuntu中,但是当我输入python3 -m cfgrib selfcheck时,它给出了以下错误:

Traceback (most recent call last):
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/messages.py", line 42, in <module>
import pyeccodes.compat as eccodes
ModuleNotFoundError: No module named 'pyeccodes'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.8/runpy.py", line 184, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.8/runpy.py", line 143, in _get_module_details
return _get_module_details(pkg_main_name, error)
File "/usr/lib/python3.8/runpy.py", line 110, in _get_module_details
__import__(pkg_name)
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/__init__.py", line 19, in <module>
from .cfmessage import CfMessage
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/cfmessage.py", line 29, in <module>
from . import messages
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/messages.py", line 44, in <module>
raise exc
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/messages.py", line 37, in <module>
from . import bindings as eccodes
File "/home/berke/.local/lib/python3.8/site-packages/cfgrib/bindings.py", line 57, in <module>
raise RuntimeError(f"ecCodes library not found using {LIBNAMES}")
RuntimeError: ecCodes library not found using ['eccodes', 'libeccodes.so', 'libeccodes']

python版本是Python 3.8.2。是否可以通过pip安装cfgrib ?

PyPI最新发布的cfgrib版本0.9.8.5没有将eccodespyeccodes声明为依赖项,甚至不是额外的。您可以单独安装其中一个:

pip install eccodes

pip install pyeccodes

(我不知道有什么区别;cfgrib可以同时使用).

这个错误已经在仓库中修复了,但还没有发布到PyPI,所以你可以尝试使用git安装最新版本:

pip install --upgrade "git+https://github.com/ecmwf/cfgrib.git#egg=cfgrib"

相关内容

  • 没有找到相关文章

最新更新