Как я могу установить Numpy на Python 3.1?

У меня есть сервер Ubuntu 10.10 на EC2. Я установил Python 3.1, и теперь я хочу установить на него NumPy. Как мне это сделать? Я попытался easy_install-3.1 numpy, но получил эту ошибку:

RefactoringTool: Refactored /tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/core/defchararray.py
RefactoringTool: Files that were modified:
RefactoringTool: /tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/compat/py3k.py
RefactoringTool: /tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/core/defchararray.py
Running from numpy source directory.Traceback (most recent call last):
  File "/usr/local/bin/easy_install-3.1", line 9, in <module>
    load_entry_point('distribute==0.6.14', 'console_scripts', 'easy_install-3.1')()
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 1855, in main
    with_ei_usage(lambda:
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 1836, in with_ei_usage
    return f()
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 1859, in <lambda>
    distclass=DistributionWithoutHelpCommands, **kw
  File "/usr/lib/python3.1/distutils/core.py", line 149, in setup
    dist.run_commands()
  File "/usr/lib/python3.1/distutils/dist.py", line 919, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.1/distutils/dist.py", line 938, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 342, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 582, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 612, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 802, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 1079, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/command/easy_install.py", line 1068, in run_setup
    run_setup(setup_script, args)
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/sandbox.py", line 30, in run_setup
    lambda: exec(compile(open(
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/sandbox.py", line 71, in run
    return func()
  File "/usr/local/lib/python3.1/dist-packages/distribute-0.6.14-py3.1.egg/setuptools/sandbox.py", line 33, in <lambda>
    {'__file__':setup_script, '__name__':'__main__'})
  File "setup.py", line 211, in <module>
  File "setup.py", line 204, in setup_package
  File "/tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/distutils/core.py", line 152, in setup
  File "setup.py", line 151, in configuration
  File "/tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/distutils/misc_util.py", line 972, in add_subpackage
  File "/tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/distutils/misc_util.py", line 941, in get_subpackage
  File "/tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/distutils/misc_util.py", line 878, in _get_configuration_from_setup_py
  File "numpy/setup.py", line 5, in configuration
  File "/tmp/easy_install-MiUli2/numpy-1.5.1/build/py3k/numpy/distutils/misc_util.py", line 713, in __init__
ValueError: 'build/py3k/numpy' is not a directory
12
задан 22 January 2011 в 18:43

3 ответа

Попробуйте эту команду для установки numpy

sudo apt-get install python-numpy
0
ответ дан 22 January 2011 в 18:43

Код из этой ветви numpy, кажется, включает в себя исправление.
Вот фрагмент и соответствующие комментарии:

643         # XXX Hack to get numpy installable with easy_install.
644         # The problem is easy_install runs it's own setup(), which
645         # sets up distutils.core._setup_distribution. However,
646         # when our setup() runs, that gets overwritten and lost.
647         # We can't use isinstance, as the DistributionWithoutHelpCommands
648         # class is local to a function in setuptools.command.easy_install
649         if dist is not None and \
650                 repr(dist).find('DistributionWithoutHelpCommands') != -1:
651             return None
652         return dist

Однако, если вы не хотите этого делать, попробуйте python3.1 setup.py install внутри каталога, в который вы извлекли numpy. Это позволяет избежать проблемы easy_install, описанной в комментариях к коду.

0
ответ дан 22 January 2011 в 18:43

Поскольку NumPy недоступен для Python 3.x, как и многие другие библиотеки

http://sourceforge.net/projects/numpy/files/NumPy/1.5.1/

0
ответ дан 22 January 2011 в 18:43

Другие вопросы по тегам:

Похожие вопросы: