PYTHON ujson. ERROR: 无法为使用 PEP 517 的 ujson 构建轮子,因此无法直接安装

3

我正在尝试使用Poetry框架在Windows笔记本电脑上安装RASA,并从源代码构建。使用pip工具无法帮助我安装Tensorflow,而Tensorflow是与RASA一起安装的必备组件。

以下是我已经完成的步骤:

$ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
$ git clone https://github.com/RasaHQ/rasa.git
$ cd rasa
$ poetry install

在安装过程中,到达安装ujson这一步时发生了以下情况,导致安装停止:

Collecting ujson
  Using cached ujson-2.0.3.tar.gz (7.1 MB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Building wheels for collected packages: ujson
  Building wheel for ujson (PEP 517): started
  Building wheel for ujson (PEP 517): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: 'c:\users\claudiu\appdata\local\programs\python\python38\python.exe' 'c:\users\claudiu\appdata\local\programs\python\python38\lib\site-packages\pip\_vendor\pep517\_in_process.py' build_wheel 'C:\Users\claudiu\AppData\Local\Temp\tmp3514zx41'
       cwd: C:\Users\claudiu\AppData\Local\Temp\pip-install-2qy6btub\ujson
  Complete output (16 lines):
  running bdist_wheel
  running build
  running build_ext
  building 'ujson' extension
  creating build
  creating build\temp.win-amd64-3.8
  creating build\temp.win-amd64-3.8\Release
  creating build\temp.win-amd64-3.8\Release\deps
  creating build\temp.win-amd64-3.8\Release\deps\double-conversion
  creating build\temp.win-amd64-3.8\Release\deps\double-conversion\double-conversion
  creating build\temp.win-amd64-3.8\Release\lib
  creating build\temp.win-amd64-3.8\Release\python
  C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -I./python -I./lib -I./deps/double-conversion/double-conversion -Ic:\users\claudiu\appdata\local\programs\python\python38\include -Ic:\users\claudiu\appdata\local\programs\python\python38\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include" /EHsc /Tp./deps/double-conversion/double-conversion\bignum-dtoa.cc /Fobuild\temp.win-amd64-3.8\Release\./deps/double-conversion/double-conversion\bignum-dtoa.obj -D_GNU_SOURCE
  bignum-dtoa.cc
  ./deps/double-conversion/double-conversion\bignum-dtoa.cc(28): fatal error C1083: Cannot open include file: 'math.h': No such file or directory
  error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\VC\\Tools\\MSVC\\14.16.27023\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2
  ----------------------------------------
  ERROR: Failed building wheel for ujson
Failed to build ujson
ERROR: Could not build wheels for ujson which use PEP 517 and cannot be installed directly

我可以简单地安装Anaconda并以这种方式完成(tensorflow也是这样工作的),但我想要构建的项目需要能够在任何时候在Anaconda之外运行。

有人能帮我吗? 顺便说一下,我已经安装了最新的Microsoft Visual C++和构建工具。

2个回答

5

在Windows系统中可能会出现两个问题:

  1. 如果你的电脑是32位操作系统而不是64位,安装过程中会出现位数问题。请使用以下链接进行安装:https://rasa.com/docs/rasa/user-guide/installation/#step-by-step-installation-guide

  2. 关于ujson兼容性问题,请参考此处的讨论:https://github.com/ultrajson/ultrajson/issues/369

从以下网址下载whl文件:https://www.lfd.uci.edu/~gohlke/pythonlibs/#ujson

a) 安装ujson-1.35-cp37-cp37m-win_amd64.whl文件:

b) 安装rasa:


尝试以下步骤,官方 Rasa 文档: 1)conda create --name installrasa python==3.7.6 2)activate installrasa 3)conda install ujson 4)conda install tensorflow 5)pip install rasa rasa init - robin9029

2

尝试卸载当前版本的ujson。

conda uninstall ujson

尝试安装ujson-1.35版本。

conda install ujson==1.35

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接