<p>numpy рд╕рдВрд╕реНрдерд╛рдкрди рдереНрд░реВ install_requires рд╕реАрдзрд╛ рдореБрджреНрджрд╛ (Trac # 1841)</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 20 рдЕрдХреНрддреВре░ 2012  ┬╖  39рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: numpy/numpy

_Original рдЯрд┐рдХрдЯ http://projects.scipy.org/numpy/ticket/1841 2011-05-25 рдХреЛ trac user ohe рджреНрд╡рд╛рд░рд╛, рдЕрдЬреНрдЮрд╛рдд рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ ред_

рдирдорд╕реНрддреЗ,

рдПрдХ virtualenv рдореЗрдВ, python v2.7.1 рдХреЗ рд╕рд╛рде, рдореИрдВ set_requires рдХреЛ setuptools / рд╡рд┐рддрд░рд┐рдд рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрдиреНрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

from setuptools import setup
setup(...
      install_requires=['numpy'],
      ...)

рдПрдХ python setup.py install рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЯреНрд░реЗрд╕рдмреИрдХ рджреЗрддрд╛ рд╣реИ:

running install
running bdist_egg
running egg_info
writing requirements to UNKNOWN.egg-info/requires.txt
writing UNKNOWN.egg-info/PKG-INFO
writing top-level names to UNKNOWN.egg-info/top_level.txt
writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
installing library code to build/bdist.macosx-10.6-intel/egg
running install_lib
warning: install_lib: 'build/lib' does not exist -- no Python modules to install

creating build/bdist.macosx-10.6-intel
creating build/bdist.macosx-10.6-intel/egg
creating build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying UNKNOWN.egg-info/PKG-INFO -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying UNKNOWN.egg-info/SOURCES.txt -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying UNKNOWN.egg-info/dependency_links.txt -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying UNKNOWN.egg-info/requires.txt -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying UNKNOWN.egg-info/top_level.txt -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating 'dist/UNKNOWN-0.0.0-py2.7.egg' and adding 'build/bdist.macosx-10.6-intel/egg' to it
removing 'build/bdist.macosx-10.6-intel/egg' (and everything under it)
Processing UNKNOWN-0.0.0-py2.7.egg
Copying UNKNOWN-0.0.0-py2.7.egg to /Users/olivier/tc/karmatest/lib/python2.7/site-packages
Adding UNKNOWN 0.0.0 to easy-install.pth file

Installed /Users/olivier/tc/karmatest/lib/python2.7/site-packages/UNKNOWN-0.0.0-py2.7.egg
Processing dependencies for UNKNOWN==0.0.0
Searching for numpy
Reading http://pypi.python.org/simple/numpy/
Reading http://numpy.scipy.org
Reading http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=175103
Reading http://numeric.scipy.org
Best match: numpy 1.6.0
Downloading http://sourceforge.net/projects/numpy/files/NumPy/1.6.0/numpy-1.6.0.tar.gz/download
Processing download
Running numpy-1.6.0/setup.py -q bdist_egg --dist-dir /var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/egg-dist-tmp-Zr2lMr
Running from numpy source directory.Warning: distutils distribution has been initialized, it may be too late to add a subpackage commandWarning: distutils distribution has been initialized, it may be too late to add a subpackage fcompilernon-existing path in '/private/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils': 'site.cfg'
Warning: distutils distribution has been initialized, it may be too late to add a subpackage distutilsWarning: distutils distribution has been initialized, it may be too late to add a subpackage testingWarning: distutils distribution has been initialized, it may be too late to add a subpackage f2pyWarning: distutils distribution has been initialized, it may be too late to add an extension _sortWarning: distutils distribution has been initialized, it may be too late to add an extension multiarrayWarning: distutils distribution has been initialized, it may be too late to add an extension umathWarning: distutils distribution has been initialized, it may be too late to add an extension scalarmathWarning: distutils distribution has been initialized, it may be too late to add an extension _dotblasWarning: distutils distribution has been initialized, it may be too late to add an extension umath_testsWarning: distutils distribution has been initialized, it may be too late to add an extension multiarray_testsWarning: distutils distribution has been initialized, it may be too late to add a subpackage coreWarning: distutils distribution has been initialized, it may be too late to add an extension _compiled_baseWarning: distutils distribution has been initialized, it may be too late to add a subpackage libWarning: distutils distribution has been initialized, it may be too late to add a subpackage oldnumericWarning: distutils distribution has been initialized, it may be too late to add an extension _capiWarning: distutils distribution has been initialized, it may be too late to add a subpackage numarrayWarning: distutils distribution has been initialized, it may be too late to add an extension fftpack_liteWarning: distutils distribution has been initialized, it may be too late to add a subpackage fftWarning: distutils distribution has been initialized, it may be too late to add an extension lapack_liteWarning: distutils distribution has been initialized, it may be too late to add a subpackage linalgWarning: distutils distribution has been initialized, it may be too late to add an extension mtrandWarning: distutils distribution has been initialized, it may be too late to add a subpackage randomWarning: distutils distribution has been initialized, it may be too late to add a subpackage maWarning: distutils distribution has been initialized, it may be too late to add a subpackage matrixlibWarning: distutils distribution has been initialized, it may be too late to add a subpackage compatWarning: distutils distribution has been initialized, it may be too late to add a subpackage polynomialWarning: distutils distribution has been initialized, it may be too late to add a subpackage docWarning: distutils distribution has been initialized, it may be too late to add a subpackage numpyCould not locate executable f95
Could not locate executable f90
Could not locate executable f77
Could not locate executable xlf90
Could not locate executable xlf
Could not locate executable ifort
Could not locate executable ifc
Could not locate executable g77
Found executable /usr/local/bin/gfortran
_configtest.c:1: warning: conflicting types for built-in function тАШexpтАЩ
_configtest.c:1: warning: conflicting types for built-in function тАШexpтАЩ
_configtest.c:1:20: error: Python.h: No such file or directory
_configtest.c:1:20: error: Python.h: No such file or directory
lipo: can't figure out the architecture type of: /var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-//ccLgEqLk.out
_configtest.c:1:20: error: Python.h: No such file or directory
_configtest.c:1:20: error: Python.h: No such file or directory
lipo: can't figure out the architecture type of: /var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-//ccLgEqLk.out
Traceback (most recent call last):
  File "setup.py", line 4, in <module>
    install_requires=['numpy']
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/install.py", line 76, in run
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/install.py", line 104, in do_egg_install
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 211, in run
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 427, in easy_install
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 478, in install_item
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 519, in process_distribution
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 563, in resolve
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 799, in best_match
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 811, in obtain
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 446, in easy_install
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 476, in install_item
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 655, in install_eggs
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 930, in build_and_install
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/easy_install.py", line 919, in run_setup
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/sandbox.py", line 62, in run_setup
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/sandbox.py", line 105, in run
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/sandbox.py", line 64, in <lambda>
  File "setup.py", line 196, in <module>

  File "setup.py", line 189, in setup_package

  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/core.py", line 186, in setup
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/Users/olivier/tc/karmatest/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/bdist_egg.py", line 167, in run
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/command/egg_info.py", line 8, in run
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/command/build_src.py", line 152, in run
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/command/build_src.py", line 169, in build_sources
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/command/build_src.py", line 328, in build_extension_sources
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/command/build_src.py", line 385, in generate_sources
  File "/private/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/core/setup.py", line 410, in generate_config_h

  File "/private/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/core/setup.py", line 41, in check_types

  File "/private/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/core/setup.py", line 271, in check_types

SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev|python-devel.
/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/misc_util.py:251: RuntimeWarning: Parent module 'numpy.distutils' not found while handling absolute import
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/misc_util.py", line 251, in clean_up_temporary_directory
ImportError: No module named numpy.distutils
Error in sys.exitfunc:
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/var/folders/Iy/Iyse1OVUE38-IcPmyTb65E+++TI/-Tmp-/easy_install-W5KwbN/numpy-1.6.0/numpy/distutils/misc_util.py", line 251, in clean_up_temporary_directory
ImportError: No module named numpy.distutils

рдореБрдЭреЗ рдХрд┐рд╕реА рднреА virtualenv рдХреЗ рдЕрдВрджрд░ рдпрд╛ рдмрд╛рд╣рд░ pip install numpy рдпрд╛ easy_install numpy рд╕рд╛рде numpy рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

рдУрдПрд╕: рдореИрдХ рдУрдПрд╕ 10.6.7

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП FYI рдХреЗ рд░реВрдк рдореЗрдВ, setuptools рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде, рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдореЗрдВ setup_requires NumPy рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рднреА рдЗрд╕реЗ install_requires рдореЗрдВ рд░рдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ setup.py рджрд┐рдЦрддрд╛ рд╣реИ:

setup(
...
    setup_requires=["numpy"],
    install_requires=["numpy"],
)

рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдФрд░ рд▓рд┐рдирдХреНрд╕ (рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛) рджреЛрдиреЛрдВ рдкрд░ рдПрдХ рдмрд╛рд░ NumPy рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред

рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВ рдХреЛрдИ рд╕реБрд░рд╛рдЧ рдирд╣реАрдВ рд╣реИ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИред

рд╕рднреА 39 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

_ @ rgommers рдиреЗ 2011-05-27_ рдкрд░ рд▓рд┐рдЦрд╛

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдмрд╕ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рдЦрд╕реНрддрд╛ рдФрд░ рдлрд┐рд░ рдЖрдкрдХрд╛ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ? рдЗрди рдмреБрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╕реЗрдЯрдкреВрд▓ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЯрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рд╣реИ, рддреЛ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдкрд╣рд▓реА рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрдкреВрд▓рд╕рдПрд╕реЗрдЯрдЕрдк () рдХреЙрд▓рд┐рдВрдЧ рдЬрд╛рджреВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИ рдЬреЛ numpy.distutils рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреЗрдВрдЪ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП:

Running from numpy source directory.Warning: distutils distribution has been
initialized, it may be too late to add a subpackage commandWarning: distutils
distribution has been initialized, it may be too late to add a subpackage

рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рдбрд┐рд╕реНрдЯрд▓реНрдпреВрдЯ / misc_util.py рд╕реЗ рдЖрддреА рд╣реИред

_trac рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ ijstokes рдиреЗ 2011-06-08_ рдкрд░ рд▓рд┐рдЦрд╛

рдореЗрд░реЗ рдкрд╛рд╕ рдмрд╕ рдпрд╣реА рддреНрд░реБрдЯрд┐ рдереА рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рд╣реИред рдпрджрд┐ рдореИрдВ рдЕрдиреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде easy_install рдХреЛ рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рд╡реЗ рджреВрд╕рд░реА рдмрд╛рд░ рдХреЗ рджреМрд░ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдореЗрд░рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ easy_install рд╕рддреНрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗрд╡рд▓ "рджреГрд╢реНрдпрдорд╛рди" рд╣реИред

рдЗрдЖрди

рдХреНрдпрд╛ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ? рдЗрд╕рдХреЗ рдХрд╛рд░рдг рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдбреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЧреИрд░ рдЖрдИрдПрдЪрдПрдордУ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдРрд╕реЗ рдмрд┐рдВрджреБ рдкрд░ рдкрд╣реБрдБрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ рдЬрд╣рд╛рдБ рдПрдХ рд╕реЗрдЯрдЕрдк рдХреЗ install_requires рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рд╕реБрдиреНрдирддрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрднрд╡ рд╣реИ, рдЕрдЧрд░ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдХрд╛ рдирд┐рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рд╛рдл рддрдп рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдПрдХ рдкреНрд░рд┐рдпреЛ рдирд╣реАрдВ рд╣реИ - install_requires рдХреЛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддреЗ рд╕рдордп (рдЬрдм рддрдХ рдХрд┐ рдкрд╛рдЗрдк рдФрд░ easy_install рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдВ) imho рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдЖрдк рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдзреБрдирд┐рдХ рдбрд┐рд╕реНрдЯреБрдЯрд┐рд▓реНрд╕ / рд╕реЗрдЯрдкреВрд▓ / рдкрд╛рдЗрдк рдХреЗ рд╕рд╛рде рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ?

рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИред

рдореЗрд░реЗ рдЖрдИрдкреИрдб рд╕реЗ рднреЗрдЬрд╛ рдЧрдпрд╛

29 рдирд╡рдВрдмрд░ 2013 рдХреЛ 7:22 рдмрдЬреЗ, njsmith рд╕реВрдЪрдирд╛рдПрдВ @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдзреБрдирд┐рдХ рдХреЗ рд╕рд╛рде рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ
distutils / setuptools / рдкрд┐рдк?

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ рджреЗрдЦреЗрдВ
Gi tHubhttps: //github.com/numpy/numpy/issues/2434#issuecomment -29485806
ред

рдмрд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рднрд╛рдЧ рдЧрдпрд╛ рддрд╛рдХрд┐ рдпрд╣ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХреЗ рдХрд┐ рдпрд╣ рд╡рд╣рд╛рдБ рд╣реИред рд╡рд┐рдХрд▓реНрдк install_requires рдХреЛ рдПрдХ рдХрд╕реНрдЯрдо рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрдм рдЗрд╕рдХреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рди рд╣реЛред

рдУрдПрд╕: рдореИрдХ 10.8.3

рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЯрдХрд░рд╛рдирд╛ред рдПрдХ рд╢реЛ рдмрдВрдж рдирд╣реАрдВ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИред рдЦрд╛рд╕рдХрд░ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдПрдирд╡реА рдореБрджреНрджреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдмрдЧ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдмрдирд╛рдП рдЧрдП 2.7 рд╡рд░реНрдЪреБрдирд╛рд╡ рдореЗрдВ рдкрд╛рдВрдбрд╛ (рдЬреЛ install_requires рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ) рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ:

$ virtualenv --no-site-packages nonumpy
$ source nonumpy/bin/activate
$ cd $PANDAS_DIR
$ pip install cython # needed for pandas
$ python setup.py install

рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреАред

рдореЗрд░реЗ рдкрд╛рд╕ 2.7 рд╡рд░реНрдЪреБрдЕрд▓ рдПрдирд╡реА рдореЗрдВ рдпрд╣ рдореБрджреНрджрд╛ рд╣реИред рдУрдПрд╕ ubuntu wheezy

@zethraeus рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдКрдкрд░ рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ)? рдпрджрд┐ рд╣рдо рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рддреЛ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдХрдард┐рди рд╣реИред

рдирдорд╕реНрддреЗ! рдЦреЗрдж рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдЗрддрдирд╛ рд╕рдордп рд▓рдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдПрдХ рдкреНрд░рдЬрдирдирдХрд░реНрддрд╛ рд╣реИред

рджреЗрдЦреЗрдВ: https://gist.github.com/kejbaly2/71517b08536776399198

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП @ kejbaly2 , рдореИрдВ рдЗрд╕реЗ рдЕрдм рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

SO рдкрд░ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛:
http://stackoverflow.com/questions/20356725/error-installing-numpy-via-setup-tools-in-virtualenv-on-ubuntu
http://stackoverflow.com/questions/19904957/installing-numpy-as-a-dependency-in-setup-py

рдФрд░ Red Hat рдмрдЧ рдЯреНрд░реИрдХрд░ рдореЗрдВ: https://bugzilla.redhat.com/show_bug.cgi?id=1019924

рдРрд╕реА рдФрд░ рднреА рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ pip рд╕рд╣реА рдХрд░рддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди setuptools install_requires рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ: https://bitbucket.org/pypa/setuptools/issue/209/setup_requires-and-install_requires- рди

Install_requires рдФрд░ numpy рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╣реИ

рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдореИрдВ Red Hat 6.5 рдкрд░ рддреНрд░реБрдЯрд┐ рдХреЛ рдХреИрд╕реЗ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ
https://gist.github.com/necrolyte2/530e9b39dcb0259b69d4

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП FYI рдХреЗ рд░реВрдк рдореЗрдВ, setuptools рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде, рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдореЗрдВ setup_requires NumPy рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА рднреА рдЗрд╕реЗ install_requires рдореЗрдВ рд░рдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ setup.py рджрд┐рдЦрддрд╛ рд╣реИ:

setup(
...
    setup_requires=["numpy"],
    install_requires=["numpy"],
)

рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ рдФрд░ рд▓рд┐рдирдХреНрд╕ (рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛) рджреЛрдиреЛрдВ рдкрд░ рдПрдХ рдмрд╛рд░ NumPy рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред

рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВ рдХреЛрдИ рд╕реБрд░рд╛рдЧ рдирд╣реАрдВ рд╣реИ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИред

рдореИрдВ рдПрдХ рдРрд╕реЗ рд╣реА рдореБрджреНрджреЗ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдХрднреА-рдХрднреА рддрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдиреЗрдкреНрд╕реА рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдПрд╕реНрдЯреНрд░реЛрдкреА рдореЗрдВ setup_requires=['Numpy'] рдХреЗ рд░рд╛рд╕реНрддреЗ рд╕реЗ рд╣реЛ рд░рд╣рд╛ рд╣реЛ, рдЬрдм рдПрд╕реНрдЯреНрд░реЛрдкреА рдЦреБрдж рдХреЛ setup_requires рдПрдХ рдФрд░acakge рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реЛ (рдореИрдВ рдЗрд╕реЗ 'рд╕реЗрдЯрдЕрдк' рдХрд╣рддрд╛ рд╣реВрдВ)ред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рд╛рдЪреАрди (рд▓реЗрдХрд┐рди рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рдЕрднреА рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ, рдХрдо рд╕реЗ рдХрдо рдереЛрдбрд╝рд╛ рд╕рд╛?) рдмрд┐рдЯ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рд╣реИ: https://github.com/numpy/numpy/blob/9fc077332b34a7b2a9a2626f5ae6cc50d57162db5/numpy/distutils/core.net

рдореЗрдВ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдЬрдм Numpy рдХрд╛ setup.py рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдпрд╣ рдПрдХ рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ shoves configuration рдХреЗ рд▓рд┐рдП kwargs рдореЗрдВ numpy.distutils.core.setup ред numpy.distutils.core.setup рдмрджрд▓реЗ рдореЗрдВ 'configuration' рдХреБрдВрдЬреА рд╕реЗрдЯрдЕрдк рдХрдЧрд╛рд░реЛрдВ рдХреЛ рдкреЙрдк рдХрд░рддрд╛ рд╣реИ , рдлрд┐рд░ distutils.core рдореЗрдВ рдХреБрдЫ "рдЬрд╛рджреВ" рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ _itself_ recursively рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ ред рдЗрд╕ рдкреБрдирд░рд╛рд╡рд░реНрддреА рдХреЙрд▓ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ / рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рддрд░реНрдХреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╕реНрдЯреБрдЯрд┐рд▓ рдорд╢реАрдирд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред

рдпрд╣ рддрдм configuration рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╕рднреА Numpy рдЙрдк-рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рд╕рднреА рд╕рдВрдХреБрд▓ рдХреЗ рд╕рд╛рде setup() рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╡рд╛рдкрд╕ рдбрд┐рд╕реНрдЯрд▓реНрдпреВрдЯ рдореЗрдВ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдЬрд╣рд╛рдБ рдпрд╣ рд╕рдм рдЪрд▓рддрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ Configuration рдкреНрд░рдмрдВрдзрдХ рдХреЛ рдХрднреА-рдХрднреА Distribution рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рд╛рдорд╛рди рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП get_distribution рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд░реВрд░рдд рдмрд╣рд╕ рдХреА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЬрдмрдХрд┐ рд╡рд╣рд╛рдБ рдореЗрдВ рдХреЛрдб рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЗ рд╣реИрдВ Configuration рдХрд┐ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд╣рд╛рдБ рдЕрдиреНрдп рднрд╛рдЧреЛрдВ рд╣реИ рдХрд┐ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╡рд╣рд╛рдБ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╣реИ рдХрд░ рд░рд╣реЗ рд╣реИрдВ Distribution рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдЬреБрдбрд╝реА distutils.core._setup_distribution рддреЛ рдХреБрдЫ рд╢рд╛рдпрдж рдЧрд▓рдд рд╣реИ (рдЗрд╕рд▓рд┐рдП "рдбрд┐рд╕реНрдЯреБрдЯрд┐рд▓реНрд╕ рд╡рд┐рддрд░рдг рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рд╕рдмрдкреЗрдХреЗрдЬ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рд╕рдХрддреА рд╣реИ" рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХрд┐ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рд╣реИ)ред

рдереЛрдбрд╝рд╛ рдкреАрдЫреЗ рдЬрд╛рдиреЗ рдФрд░ рдЙрдореНрдореАрдж рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП - рдЬрдм рдбрд┐рд╕реНрдЯрд┐рд▓реНрд╕ (рдпрд╛ рд╕реЗрдЯрдкреВрд▓) рд╕реЗ setup() рдлрд╝рдВрдХреНрд╢рди рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ Distribution рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ setup() kwargs рд╕реЗ рдЖрд░рдВрдн рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЕрд╕рд╛рдЗрди рдХрд░рддрд╛ рд╣реИ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ distutils.core._setup_distribution рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк Distribution distutils.core._setup_distribution ред рдХрд┐рд╕реА рднреА рдмрд┐рдВрджреБ рдкрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдЪрд░ рдХреЛ рд╕рд╛рдл рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореМрдЬреВрджрд╛ рдкрд╛рдпрдерди рджреБрднрд╛рд╖рд┐рдпрд╛ рдореЗрдВ рдЪрд▓рдиреЗ рд╡рд╛рд▓рд╛ _only_ рд╕реЗрдЯрдЕрдк рд╣реИред рдпрд╣ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред (рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдкрд╛рдЗрдк рдорд┐рд▓рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдореБрджреНрджреЗ рдЬрдм рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЙрдкрдкреНрд░рдХрд╛рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдХрдИ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ)ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рддрд░рд╣ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ setup_requires , рд╡рд╣рд╛рдБ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ Distribution рдореЗрдВ рдЪрд╛рд░реЛрдВ рдУрд░ рд▓рдЯрдХ рдЬрдбрд╝ рдкреИрдХреЗрдЬ рд╕реЗ рдЙрджрд╛рд╣рд░рдг distutils.core._setup_distribution ред рдЗрд╕рд▓рд┐рдП рдЬрдм Numpy рдХрд╛ Configuration рд╡рд░реНрдЧ _Numpy рдХреЗ рд▓рд┐рдП Distribution рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рд╛рдорд╛рди рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЧрд▓рдд Distribution рд╕рд╛рде рдЦрд┐рд▓рд╡рд╛рдбрд╝ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рдЧрд╛рдВрдарджрд╛рд░ Numpy рдмрд┐рд▓реНрдб рдореЗрдВ рдХреБрдЫ рдмрд┐рдЯреНрд╕ рдЧрд╛рдпрдм рд╣реИрдВред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИрдВ, рджреЛрдиреЛрдВ рд╕реЗрдкреНрдЯреБрдкреВрд▓ рдПрдВрдб рдФрд░ / рдпрд╛ рдиреЗрдореНрдкреА рдПрдВрдбред рдореИрдВрдиреЗ рддрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдкреВрд░реА рдмрд╛рдд рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЧрдбрд╝рдмрдбрд╝ рд╣реИ :)

рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдХреНрдпрд╛ рд╣реИ, рд╕реЗрдЯрдкреВрд▓реЛрдВ рдХреЗ рдЕрдВрдд рд╕реЗ рдПрдХ рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рди setuptools.sandbox.run_setup , рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рд╕реЗрдЯрдЕрдк рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ / рдмрд╛рдж рдореЗрдВ рд╕рднреА distutils.core рд╡реИрд╢реНрд╡рд┐рдХ рд╡реИрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдмрдЪрд╛рдиреЗ / рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реЗрдЯрдЕрдк рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рд╢реНрди рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯред

рдЬреИрд╕рд╛ рдХрд┐ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╕реЗрдЯрдЕрдкрд╕реНрдЯреВрд▓ рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рддрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЪрд╛рдЗрд▓реНрдб setup.py рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдореВрд▓ distutils.core ( sys.modules рдХреЛ рд╣рдЯрд╛рдХрд░) рдХреЛ рдЫрд┐рдкрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПред рдЙрд╕рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕реЗ рдбрдмрд▓-рдЪреЗрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

рдЕрдкрдбреЗрдЯ: рдкреБрд╖реНрдЯрд┐ рдХреА рдЧрдИ рд╣реИ, рдореИрдВрдиреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕реЗрдЯрдкреВрд▓>> = 10.0 рдореЗрдВ рдЪрд╛рд░реЛрдВ рдУрд░ (рдХреБрдЫ рд╣рдж рддрдХ рдЦреБрд╢ рджреБрд░реНрдШрдЯрдирд╛ рд╕реЗ) рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред

@embray рдЬрд╛рд╕реВрд╕реА рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рд╛ рдХрд╛рдо рд╣реИ! (рдФрд░ рдЗрд╕рд╕реЗ рдореЗрд░реЗ рд╕рд┐рд░ рдореЗрдВ рдереЛрдбрд╝реА рдЪреЛрдЯ рд▓рдЧреА :))

рдЖрдк рд╕рд╣реА рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ easy_install - рдФрд░ рдЗрд╕рд▓рд┐рдП get_distribution() рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ - рдЕрднреА рднреА рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рдирд╣реАрдВ рддреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред

@rgommers рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐, easy_install рдХреЗ рд▓рд┐рдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдмрд╣реБрдд рд╕рдордп рдкрд╣рд▓реЗ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рд╣реИ (рди рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рдХреЗ рд▓рд┐рдП рдХрд┐ easy_install рдЦреБрдж рдХреЛ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЕрднреА рднреА рд╡рд╣рд╛рдБ рд╣реИ рдореБрдЯреНрдареА рднрд░ рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ)ред рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдПрдХ рдРрд╕реЗ рдкреИрдЪ рдХреЗ рд╕рд╛рде рдЖ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рдореВрд▓ рд╕рдВрджрд░реНрдн рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдЕрдиреНрдп рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

@ рд╣реЗрдореНрдмреНрд░реЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рдкреИрдЪ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ ~ 2 рд╕рдкреНрддрд╛рд╣ рдХреЗ рднреАрддрд░ рд╕рдореАрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ (рдзреАрд░реЗ тАЛтАЛрд╕реЗ) рдХрд┐рдХ рдХрд░реЗрдВ

setup_requires = ["numpy"] рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдорд┐рд▓рд╛:

рд╡рд┐рд╢реЗрд╖рддрд╛: 'рдореЙрдбреНрдпреВрд▓' рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИ 'get_include'ред

рд▓реЗрдХрд┐рди рджреВрд╕рд░реА рдмрд╛рд░ "python setup.py install" рдЪрд▓рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИред Http://stackoverflow.com/questions/21605927/why-doesnt-setup-requires-work-properly-for-numpy

рдореИрдВ рд╕рд┐рд░реНрдл @asmaier рджреНрд╡рд╛рд░рд╛ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ред

рдЗрд╕ рд▓рд╛рдпрдХ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдХрднреА рдирд╣реАрдВ рднреВрд▓ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдЕрднреА рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдкрдбрд╝рд╛ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рдФрд░ рднреА рдЗрд╕реЗ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ рдХреБрдЫ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдХреАрдВ, рдЬрд╣рд╛рдВ рд╡реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рд╕реЗ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВред

рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдореБрджреНрджрд╛ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ __builtins__.__NUMPY_SETUP__ = True рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ
рдФрд░ рдЬрдм рдЖрдк рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрдиреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ __NUMPY_SETUP__ рдХреЛ setuptools рджреНрд╡рд╛рд░рд╛ рд░реАрд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ __NUMPY_SETUP__ = False рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
https://github.com/numpy/numpy/blob/055056a3108ab19883e50ac125ab9974823498c7/numpy/distutils/misc_util.py#L2195
рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдХрднреА рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкрд┐рдЫрд▓реА рд▓рд╛рдЗрди рдкрд░ рд░рд┐рдЯрд░реНрди ...

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╕рдВрдкреВрд░реНрдг isbootstrapping рдлрд╝рдВрдХреНрд╢рди __builtins__ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ / рджреБрд░реБрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрдиреНрди рд╣реЛ рдЧрдП рд╣реИрдВ, рдФрд░ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрдиреНрди рд╣реИред

@JensTimmerman рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдпрд╣ рднреА https://github.com/matplotlib/matplotlib/issues/6928 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ,

рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдЙрдЪрд┐рдд рддрд░реАрдХреЗ рдХреЗ рдХрд┐рд╕реА рднреА рд╕реБрдЭрд╛рд╡ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

@rgommers рд╡рд┐рдЪрд╛рд░?

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ NUMPY_SETUP = рдЧрд▓рдд рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
https://github.com/numpy/numpy/blob/055056a3108ab19883e50ac125ab9974823498c7/numpy/distutils/misc_util.py#L2195
рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдХрднреА рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкрд┐рдЫрд▓реА рд▓рд╛рдЗрди рдкрд░ рд░рд┐рдЯрд░реНрди ...

is_bootstrapping рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╣реАрдВ рднреА рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ рд╣реИ рдХрд┐ рдкреВрд░реЗ isbootstrapping рд╕рдорд╛рд░реЛрд╣ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ / рдпрд╣рд╛рдБ builtins рдХреЛрд╕, рдПрдХ рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ numpy рдЬрдм рдЯреВрдЯрддрд╛ рдореЗрдВ, рдФрд░ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ numpy рд╣реИ рдХреА рд╣реИред

__builtins__ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдореБрдЦреНрдп setup.py рд╣реИ ред

рдпрд╣ рдмрджрд╕реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдордЬрдмреВрдд рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдХрдард┐рди рд╣реИред рдлрд┐рд▓рд╣рд╛рд▓ рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ setup_requires='numpy' рдХреЗ рд▓рд┐рдП рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ рдФрд░ install_requires ред рдЙрдирдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рдкреВрд░реНрд╡ рдореЗрдВ setuptools рдЖрдХреНрд░рдордг рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ pip рдХреЛ рдЕрднреА рддрдХ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИред Scipy рдореЗрдВ рд╣рдо setup_requires='numpy' рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрднреА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реБрдИред рддреЛ рдпрд╣ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреНрд▓рд╕ matplotlib рдХреА рд╕реЗрдЯрдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдлрдВрдХрдиреЗрд╕ рд╣реЛред

Https://github.com/numpy/numpy/issues/2434#issuecomment -77898051 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд┐рд░ рд╕реЗ рдкрдврд╝рдирд╛, рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХрд╛рд░рдг рдХрд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ __NUMPY_SETUP__ ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╛ рд╢рд╛рдпрдж рдпрд╣ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдФрд░ рддрд░реАрдХреЗ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдЖрдо рддреМрд░ рдкрд░ рдпрд╣рд╛рдБ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ pip рдПрдХ рддрд░рд╣ рд╕реЗ рд╕рд╛рдорд╛рди рдмрдирд╛рдиреЗ / рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреГрдердХ рд╣реИред

del builtins.__NUMPY_SETUP__ рдХреЗ рдЕрдВрдд рдореЗрдВ setup.py del builtins.__NUMPY_SETUP__ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЗрд╕ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рд╕рд╣реА рдпрд╛ рдЧрд▓рдд рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

gh-7956 рдореЗрдВ рдПрдХ рдХреЛрд╢рд┐рд╢ рджреА

рдмрд╕ рдЕрдЧрд░ рдорд╛рдорд▓рд╛ https://github.com/numpy/numpy/issues/2434#issuecomment -49156521 рдореЗрдВ рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рджреА рдЧрдИ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛рдП:

cd /tmp

cat > ./setup.py <<DELIM
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author: "Chris Ward" <[email protected]>

from setuptools import setup

default_setup = dict(
    name='numpy_install_test',
    description='https://github.com/numpy/numpy/issues/2434',
    provides=['numpy_install_test'],
    install_requires=['pandas'],
    requires=['pandas'],
    license='GPLv3',
    author='Chris Ward',
    author_email='[email protected]',
)   

setup(**default_setup)

DELIM


virtualenv --no-site-packages ~/virtenvs/nonumpy
source ~/virtenvs/nonumpy/bin/activate
python setup.py install

рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд -R рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ python2.7.16 рдореЗрдВ рдкрд╛рдВрдбрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рди рд╕рдордп рд╣реЛрдирд╛

https://files.pythonhosted.org/packages/b2/4c/b6f966ac91c5670ba4ef0b0b5613b5379e3c7abdfad4e7b89a87b7373e13/pandas-0.2.2.tar.gz (11.8MB)
рдХрдорд╛рдВрдб python setup.py рдЕрдВрдбреЗ_info рд╕реЗ рдкреВрд░рд╛ рдЙрддреНрдкрд╛рджрди:
рдЯреНрд░реЗрд╕рдмреИрдХ (рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдХреЙрд▓ рдЕрдВрддрд┐рдо):
рдлрд╝рд╛рдЗрд▓ "", рдкрдВрдХреНрддрд┐ 1, рдореЗрдВ
рдлрд╝рд╛рдЗрд▓ "/tmp/pip-install-WznqHc/pandas/setup.py", рдкрдВрдХреНрддрд┐ 746, рдореЗрдВ
setuptools_kwargs)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/__init__.py", рдкрдВрдХреНрддрд┐ 144, рд╕реЗрдЯрдЕрдк рдореЗрдВ_install_setup_requires (attrs)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/__init__.py", рдкрдВрдХреНрддрд┐ 139, _install_setup_requires рдореЗрдВdist.fetch_build_eggs (dist.setup_requires)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/dist.py", рдкрдВрдХреНрддрд┐ 724, fetch_build_eggs рдореЗрдВreplace_conflicting = рд╕рдЪ,рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", рдкрдВрдХреНрддрд┐ 782, рд╕рдВрдХрд▓реНрдк рдореЗрдВreplace_conflicting = replace_conflictingрдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", рдкрдВрдХреНрддрд┐ 1065, best_match рдореЗрдВрд╕реНрд╡ рд╡рд╛рдкрд╕ рд▓реМрдЯреЗрдВ (рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рдЗрдВрд╕реНрдЯреЙрд▓рд░)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", рдкрдВрдХреНрддрд┐ 1077, рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВрд╡рд╛рдкрд╕реА рдЗрдВрд╕реНрдЯреЙрд▓рд░ (рдЖрд╡рд╢реНрдпрдХрддрд╛)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/dist.py", рдкрдВрдХреНрддрд┐ 791, fetch_build_egg рдореЗрдВрд╡рд╛рдкрд╕реА cmd.easy_install (req)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", рдкрдВрдХреНрддрд┐ 679, рдореЗрдВ easy_installрд╕реЗрд▓реНрдл.рдЗрдирд╕реНрдЯреЙрд▓_рдорд┐рдЯ (рд░рд┐рдЯрд░реНрди, рдбрд┐рд╕реНрдЯрд░реНрдмреЗрд╢рди, рдЯреИрдореНрдкрд┐рд░, рдбрд┐рдкреНрд╕)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", рдкрдВрдХреНрддрд┐ 705, install_item рдореЗрдВdists = self.install_eggs (рдХрд▓реНрдкрдирд╛, рдбрд╛рдЙрдирд▓реЛрдб, tmpdir)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", рдкрдВрдХреНрддрд┐ 890, install_eggs рдореЗрдВself.build_and_install (setup_script, setup_base) рд▓реМрдЯреЗрдВрдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", рдкрдВрдХреНрддрд┐ 1158, build_and_install рдореЗрдВself.run_setup (setup_script, setup_base, args)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", рдкрдВрдХреНрддрд┐ 1144, run_setup рдореЗрдВrun_setup (setup_script, args)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 253, run_setup рдореЗрдВрдмрдврд╝рд╛рдиреЗрдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/contextlib.py", рдкрдВрдХреНрддрд┐ 35, __exit__ рдореЗрдВself.gen.throw (рдкреНрд░рдХрд╛рд░, рдорд╛рди, рдЯреНрд░реЗрд╕рдмреИрдХ)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 195, setup_context рдореЗрдВрдкреНрд░рд╛рдкреНрддрд┐рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/contextlib.py", рдкрдВрдХреНрддрд┐ 35, __exit__ рдореЗрдВself.gen.throw (рдкреНрд░рдХрд╛рд░, рдорд╛рди, рдЯреНрд░реЗрд╕рдмреИрдХ)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 166, save_modules рдореЗрдВsaved_exc.resume ()рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 141, рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдореЗрдВрдЫрд╣. рд╕рдВрдХреНрд╖рд┐рдкреНрдд (рдкреНрд░рдХрд╛рд░, рдкреНрд░рдХрд╛рд░, рд╕реНрд╡ред tb)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рд▓рд╛рдЗрди 154, save_modules рдореЗрдВрдЙрдкрдЬ рдмрдЪ рдЧрдИрдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 195, setup_context рдореЗрдВрдкреНрд░рд╛рдкреНрддрд┐рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 250, run_setup рдореЗрдВ_execfile (setup_script, ns)рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python2.7/site-packages/setuptools/sandbox.py", рдкрдВрдХреНрддрд┐ 45, _execfile рдореЗрдВрдирд┐рд╖реНрдкрд╛рджрди (рдХреЛрдб, рдЧреНрд▓реЛрдмрд▓реНрд╕, рд▓реЛрдХрд▓)** рдлрд╝рд╛рдЗрд▓ "/tmp/easy_install-2M8B7z/numpy-1.17.0rc1/setup.py", рдкрдВрдХреНрддрд┐ 31, рдореЗрдВ

**RuntimeError: Python version >= 3.5 required.**

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрдиреНрди -рез.рез.реж.реирезрез рдХреЗ рд▓рд┐рдП рдХреНрдпреЛрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдХрд┐ python2 рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ

рдХрд┐рд╕реА рднреА рдорджрдж рдХреЛ рд╕рд░рд╛рд╣рд╛ рдЬрд╛рдПрдЧрд╛, рдзрдиреНрдпрд╡рд╛рдж

рдХреГрдкрдпрд╛ рдЕрдкрдирд╛ requirements.txt рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ

рдЖрд╡рд╢реНрдпрдХрддрд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ:

рдХреБрдкреНрдкреА == 1.0.2
рдХреБрдкреНрдкреА рдХреЗ рдЬреЗрдбрдмреНрд▓реНрдпреВрдЯреА == 0.3.2
рдХреБрдкреНрдкреА рдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ == 2.0.6
рдХреБрдкреНрдкреА рдХреЗ scrypt == 0.1.3.6
PyJWT <1.5.0
рдмреНрд▓рд┐рдВрдХрд░ == 1.4
PHONENUMBERS == 8.9.12
рдЧрдврд╝ == 0.9.0
bugsnag == 3.4.3
pickledb == 0.7.2
рдЕрдиреБрд░реЛрдз == 2.19.1
рдЕрдЬрдЧрд░-dateutil == 2.8.0
gunicorn == 19.9.0
gevent == 1.3.6
webargs == 4.0.0
рдкреНрд▓рд╛рдИ == 3.10
bson == 0.5.7
рдЕрдЬрд╡рд╛рдЗрди == 4.2.1
redis == 3.2.1
hiredis
numpy == 1.16.4

рдЕрдВрдд рдореЗрдВ рдЗрд╕реЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рд╕реБрдиреНрди рд░рдЦрдиреЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рдкрд╛рдВрдбрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ

Docker рдореЗрдВ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

RUN рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ https://github.com/pydata/pandas/releases/download/v0.24.2/pandas-0.24.2.tar.gz

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрдм рдпрд╣ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдореЗрдВ рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкрд╛рдВрдбрд╛ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдерди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рддреНрд░реБрдЯрд┐:

рдЕрдкрд╡рд╛рдж: рд╕рд╛рдЗрдерди-рдЬрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ 'рдкрд╛рдВрдбрд╛ / io / sas / sas.c' рдирд╣реАрдВ рдорд┐рд▓реАред
рд╕рд╛рдЗрдерди рдХреЛ рдПрдХ рд╡рд┐рдХрд╛рд╕ рд╢рд╛рдЦрд╛ рд╕реЗ рдкрдВрдбреЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдХреГрдкрдпрд╛ рд╕рд╛рдЗрдерди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдпрд╛ рдкрдВрдбреЛрдВ рдХрд╛ рд░рд┐рд▓реАрдЬрд╝ рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред

рдХреЛрдИ рдЙрдкрд╛рдп?

рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ install_requires рдЕрдВрджрд░ setup.py install_requires рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЪрд┐рдВрддрд╛ рдХрд░рддрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред рдХреНрдпрд╛ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрд░реЛрдд рд╕реЗ рдкрд╛рдВрдбрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? pip install pandas==0.24.2 рдХреНрдпреЛрдВ рдирд╣реАрдВ?

рд╣рд╛рдВ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкрд╛рдВрдбрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЦреЛрд▓реВрдВрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрд┐рд╕ рдкреЛрд╕реНрдЯ рдХрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛, рд╡рд╣ numPy рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд╕реАрдзреЗ pandas рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ numPy рдареАрдХ рд╕реЗ doth env рдХреЗ рддрд╣рдд Python2.7 рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред
рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ рдкрд╛рдВрдбрд╛ == 0.24.2? рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рдореИрдВ рдЗрд╕реЗ рдбреЙрдХ рдХреЗ рддрд╣рдд рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдХрд╣рддрд╛ рд╣реИред

рдЕрдкрд╡рд╛рдж: рд╕рд╛рдЗрдерди-рдЬрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ 'рдкрд╛рдВрдбрд╛ / msgpack.c' рдирд╣реАрдВ рдорд┐рд▓реАред
рд╕рд╛рдЗрдерди рдХреЛ рдПрдХ рд╡рд┐рдХрд╛рд╕ рд╢рд╛рдЦрд╛ рд╕реЗ рдкрдВрдбреЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдХреГрдкрдпрд╛ рд╕рд╛рдЗрдерди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдпрд╛ рдкрдВрдбреЛрдВ рдХрд╛ рд░рд┐рд▓реАрдЬрд╝ рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЯрд╛рд░рдмреЙрд▓ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкрд╛рдВрдбрд╛ рдХреЗ рд░рд┐рд▓реАрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рд╕рдорд╛рдкрдиред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЬрдЧрд░ рджреБрдирд┐рдпрд╛ setup_requires рд╕реЗ рджреВрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ requirements.txt рдпрд╛ pyproject.toml рдУрд░ рдмрдврд╝ рд░рд╣рд╛ рд╣реИред рдХрд╛рдо рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рд╣реИ рдЬреЛ рдЕрднреА рднреА setup_requires рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

setup(
...
    setup_requires=["numpy"],
    install_requires=["numpy"],
)

рдХреЗ рд░реВрдк рдореЗрдВ @ pomthon2 рдкрд░ numpy рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ

рдпрджрд┐ setup_requires рдЖрд╕рдкрд╛рд╕ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╣реИ рддреЛ рдХреГрдкрдпрд╛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

vigna picture vigna  ┬╖  104рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

khinsen picture khinsen  ┬╖  88рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

njsmith picture njsmith  ┬╖  97рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

anntzer picture anntzer  ┬╖  45рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

shoyer picture shoyer  ┬╖  54рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ