pip无法安装pyicu

问题描述 投票:0回答:4

我正在运行运行 Ubuntu 20.04 的 AWS。我正在尝试安装软件包

pyicu
,但我遇到了问题。我尝试运行
sudo apt install libicu-dev
,但仍然无法安装pyicu。我无法在 aws 服务器上安装brew。还有其他建议吗?这是错误消息:

    ERROR: Command errored out with exit status 1:
     command: /root/dev/big5_rest/venv/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-se360cxw/pyicu/setup.py'"'"'; __file__='"'"'/tmp/pip-install-se360cxw/pyicu/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-se360cxw/pyicu/pip-egg-info
         cwd: /tmp/pip-install-se360cxw/pyicu/
    Complete output (53 lines):
    Traceback (most recent call last):
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 63, in <module>
        ICU_VERSION = os.environ['ICU_VERSION']
      File "/usr/lib/python3.8/os.py", line 675, in __getitem__
        raise KeyError(key) from None
    KeyError: 'ICU_VERSION'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 66, in <module>
        ICU_VERSION = check_output(('icu-config', '--version')).strip()
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 19, in check_output
        return subprocess_check_output(popenargs)
      File "/usr/lib/python3.8/subprocess.py", line 411, in check_output
        return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
      File "/usr/lib/python3.8/subprocess.py", line 489, in run
        with Popen(*popenargs, **kwargs) as process:
      File "/usr/lib/python3.8/subprocess.py", line 854, in __init__
        self._execute_child(args, executable, preexec_fn, close_fds,
      File "/usr/lib/python3.8/subprocess.py", line 1702, in _execute_child
        raise child_exception_type(errno_num, err_msg, err_filename)
    FileNotFoundError: [Errno 2] No such file or directory: 'icu-config'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 69, in <module>
        ICU_VERSION = check_output(('pkg-config', '--modversion', 'icu-i18n')).strip()
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 19, in check_output
        return subprocess_check_output(popenargs)
      File "/usr/lib/python3.8/subprocess.py", line 411, in check_output
        return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
      File "/usr/lib/python3.8/subprocess.py", line 489, in run
        with Popen(*popenargs, **kwargs) as process:
      File "/usr/lib/python3.8/subprocess.py", line 854, in __init__
        self._execute_child(args, executable, preexec_fn, close_fds,
      File "/usr/lib/python3.8/subprocess.py", line 1702, in _execute_child
        raise child_exception_type(errno_num, err_msg, err_filename)
    FileNotFoundError: [Errno 2] No such file or directory: 'pkg-config'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-se360cxw/pyicu/setup.py", line 71, in <module>
        raise RuntimeError('''
    RuntimeError:
    Please install pkg-config on your system or set the ICU_VERSION environment
    variable to the version of ICU you have installed.
    
    (running 'icu-config --version')
    (running 'pkg-config --modversion icu-i18n')
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
python pip nlp polyglot pyicu
4个回答
6
投票

这似乎是 PyICU 的一个已知问题。与该线程上的错误消息和建议相反,安装

pkg-config
libicu-dev
并没有为我解决问题。仅安装
python3-icu
(正如 PyICU 官方文档中推荐的 )最终修复了它。


3
投票
安装 3 个软件包为我解决了这个问题!

sudo apt install libicu-dev python3-icu pkg-config


0
投票
    只需阅读您长输出的实际建议即可
请在您的系统上安装 pkg-config 或设置 ICU_VERSION 环境 变量为您安装的 ICU 版本。

    最新的软件包版本或在最新的操作系统上使用可能会导致问题,因此只需向作者提出问题
  1. https://gitlab.pyicu.org/main/pyicu/-/issues

0
投票
为我解决的问题是

brew install pkg-config icu4c export PATH="/opt/homebrew/opt/icu4c/bin:/opt/homebrew/opt/icu4c/sbin:$PATH" export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/opt/homebrew/opt/icu4c/lib/pkgconfig"
我正在使用 Mac M1。因此,如果您也在使用 Intel Mac,路径会略有不同。请参阅

https://gitlab.pyicu.org/main/pyicu#installing-pyicu

感谢 outofthecave 指出文档!

© www.soinside.com 2019 - 2024. All rights reserved.