我想使用Pypy更快地运行一组数据转换,但我需要安装numpy才能使脚本运行不变(显然,我可以更改脚本,但这不是重点)。我尝试使用doc告诉我的方式使用pip,但这只是行不通。从理论上讲,这给了我关于没有Visual Studio 14.1的错误(我安装了您可以想到的尽可能多的可再发行文件,包括2017年的版本,据我所知,该版本与14.1相同)。
我也知道有可能下载该模块并执行设置或从github克隆它,但是让pip正常工作将是一件很不错的事情,因为我有兴趣在不久的将来下载其中的很多模块。
不过,对于Windows来说,我还是很笨拙的,因此,如果您对它为什么不起作用有任何想法,我会很高兴。
这是我从Windows Shell获得的错误和日志:
PS C:\WINDOWS\system32>pypy3 -m ensurepip
PS C:\WINDOWS\system32>pypy3 -m pip install numpy
Collecting numpy
Using cached https://files.pythonhosted.org/packages/b6/d6/be8f975f5322336f62371c9abeb936d592c98c047ad63035f1b38ae08efe/numpy-1.17.3.zip
Installing collected packages: numpy
Running setup.py install for numpy ... error
Complete output from command "C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\pypy3.exe" -u -c "import setuptools, tokenize;__file__='C:\\Users\\alefe\\AppData\\Local\\Temp\\pip-install-uvuig992\\numpy\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\alefe\AppData\Local\Temp\pip-record-xm3lustt\install-record.txt --single-version-externally-managed --compile:
Running from numpy source directory.
Note: if you need reliable uninstall behavior, then install
with pip instead of using `setup.py install`:
- `pip install .` (from a git repo or downloaded source
release)
- `pip install numpy` (last NumPy release on PyPi)
blas_opt_info:
blas_mkl_info:
customize MSVCCompiler
libraries mkl_rt not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
blis_info:
customize MSVCCompiler
libraries blis not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
openblas_info:
customize MSVCCompiler
customize MSVCCompiler
libraries openblas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
get_default_fcompiler: matching types: '['gnu', 'intelv', 'absoft', 'compaqv', 'intelev', 'gnu95', 'g95', 'intelvem', 'intelem', 'flang']'
customize GnuFCompiler
Could not locate executable g77
Could not locate executable f77
customize IntelVisualFCompiler
Could not locate executable ifort
Could not locate executable ifl
customize AbsoftFCompiler
Could not locate executable f90
customize CompaqVisualFCompiler
Could not locate executable DF
customize IntelItaniumVisualFCompiler
Could not locate executable efl
customize Gnu95FCompiler
Could not locate executable gfortran
Could not locate executable f95
customize G95FCompiler
Could not locate executable g95
customize IntelEM64VisualFCompiler
customize IntelEM64TFCompiler
Could not locate executable efort
Could not locate executable efc
customize PGroupFlangCompiler
Could not locate executable flang
don't know how to compile Fortran code on platform 'nt'
NOT AVAILABLE
atlas_3_10_blas_threads_info:
Setting PTATLAS=ATLAS
customize MSVCCompiler
libraries tatlas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
atlas_3_10_blas_info:
customize MSVCCompiler
libraries satlas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
atlas_blas_threads_info:
Setting PTATLAS=ATLAS
customize MSVCCompiler
libraries ptf77blas,ptcblas,atlas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
atlas_blas_info:
customize MSVCCompiler
libraries f77blas,cblas,atlas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
accelerate_info:
NOT AVAILABLE
C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\numpy\distutils\system_info.py:690: UserWarning:
Optimized (vendor) Blas libraries are not found.
Falls back to netlib Blas library which has worse performance.
A better performance should be easily gained by switching
Blas library.
self.calc_info()
blas_info:
customize MSVCCompiler
libraries blas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\numpy\distutils\system_info.py:690: UserWarning:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
self.calc_info()
blas_src_info:
NOT AVAILABLE
C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\numpy\distutils\system_info.py:690: UserWarning:
Blas (http://www.netlib.org/blas/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [blas_src]) or by setting
the BLAS_SRC environment variable.
self.calc_info()
NOT AVAILABLE
'svnversion' nÆo \u201a reconhecido como um comando interno
ou externo, um programa oper vel ou um arquivo em lotes.
non-existing path in 'numpy\\distutils': 'site.cfg'
lapack_opt_info:
lapack_mkl_info:
customize MSVCCompiler
libraries mkl_rt not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
openblas_lapack_info:
customize MSVCCompiler
customize MSVCCompiler
libraries openblas not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
openblas_clapack_info:
customize MSVCCompiler
customize MSVCCompiler
libraries openblas,lapack not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
flame_info:
customize MSVCCompiler
libraries flame not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
atlas_3_10_threads_info:
Setting PTATLAS=ATLAS
customize MSVCCompiler
libraries lapack_atlas not found in C:\
customize MSVCCompiler
libraries tatlas,tatlas not found in C:\
customize MSVCCompiler
libraries lapack_atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
customize MSVCCompiler
libraries tatlas,tatlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
<class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
NOT AVAILABLE
atlas_3_10_info:
customize MSVCCompiler
libraries lapack_atlas not found in C:\
customize MSVCCompiler
libraries satlas,satlas not found in C:\
customize MSVCCompiler
libraries lapack_atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
customize MSVCCompiler
libraries satlas,satlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
<class 'numpy.distutils.system_info.atlas_3_10_info'>
NOT AVAILABLE
atlas_threads_info:
Setting PTATLAS=ATLAS
customize MSVCCompiler
libraries lapack_atlas not found in C:\
customize MSVCCompiler
libraries ptf77blas,ptcblas,atlas not found in C:\
customize MSVCCompiler
libraries lapack_atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
customize MSVCCompiler
libraries ptf77blas,ptcblas,atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
<class 'numpy.distutils.system_info.atlas_threads_info'>
NOT AVAILABLE
atlas_info:
customize MSVCCompiler
libraries lapack_atlas not found in C:\
customize MSVCCompiler
libraries f77blas,cblas,atlas not found in C:\
customize MSVCCompiler
libraries lapack_atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
customize MSVCCompiler
libraries f77blas,cblas,atlas not found in C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\libs
<class 'numpy.distutils.system_info.atlas_info'>
NOT AVAILABLE
lapack_info:
customize MSVCCompiler
libraries lapack not found in ['C:\\', 'C:\\Program Files (x86)\\Pypy\\pypy3.6-v7.2.0-win32\\libs']
NOT AVAILABLE
C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\numpy\distutils\system_info.py:1712: UserWarning:
Lapack (http://www.netlib.org/lapack/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [lapack]) or by setting
the LAPACK environment variable.
if getattr(self, '_calc_info_{}'.format(lapack))():
lapack_src_info:
NOT AVAILABLE
C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\numpy\distutils\system_info.py:1712: UserWarning:
Lapack (http://www.netlib.org/lapack/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [lapack_src]) or by setting
the LAPACK_SRC environment variable.
if getattr(self, '_calc_info_{}'.format(lapack))():
NOT AVAILABLE
C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\lib-python\3\distutils\dist.py:261: UserWarning: Unknown distribution option: 'define_macros'
warnings.warn(msg)
running install
running build
running config_cc
unifing config_cc, config, build_clib, build_ext, build commands --compiler options
running config_fc
unifing config_fc, config, build_clib, build_ext, build commands --fcompiler options
running build_src
build_src
building py_modules sources
creating build
creating build\src.win32-3.6
creating build\src.win32-3.6\numpy
creating build\src.win32-3.6\numpy\distutils
building library "npymath" sources
error: Microsoft Visual C++ 14.1 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
----------------------------------------
Command ""C:\Program Files (x86)\Pypy\pypy3.6-v7.2.0-win32\pypy3.exe" -u -c "import setuptools, tokenize;__file__='C:\\Users\\alefe\\AppData\\Local\\Temp\\pip-install-uvuig992\\numpy\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\alefe\AppData\Local\Temp\pip-record-xm3lustt\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\alefe\AppData\Local\Temp\pip-install-uvuig992\numpy\
升级: 我设法用pip安装了sympy,没有任何问题。我也可以使用mattip描述的方法安装numpy。尽管如此,大多数软件包仍会给我Microsoft Visual错误或类似错误。
答案 0 :(得分:1)
pip可以安装二进制编译的软件包,也可以下载并编译该软件包的源代码。但是,如果没有编译器,就无法从源代码进行编译。要么
或
pip install --only-binary :all: <package>
强制pip失败您可以在https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy上找到Windows的二进制轮子,您需要名称中带有pp372的轮子(PyPY为pp,python 3为3,pypy 7.2.x为72)