我在窗口框中使用python 2.7。我可以使用pip install来安装烧瓶,如下所示:
然而,在我创build一个virtualenv之后,我试图做同样的事情时得到了错误。
脚本:
$pip install virtualenv $cd /dd: $mkdir test $cd test $virtualenv flaskEnv $cd flaskEnv/Scritps/ $activate $cd ../../ $pip install flask
日志文件如下:
Collecting flask Using cached Flask-0.11.1-py2.py3-none-any.whl Requirement already satisfied (use --upgrade to upgrade): click>=2.0 in c:\projects\flask-react\flsk\lib\site-packages (from flask) Requirement already satisfied (use --upgrade to upgrade): Werkzeug>=0.7 in c:\projects\flask-react\flsk\lib\site-packages (from flask) Collecting Jinja2>=2.4 (from flask) Using cached Jinja2-2.8-py2.py3-none-any.whl Collecting itsdangerous>=0.21 (from flask) Collecting MarkupSafe (from Jinja2>=2.4->flask) Using cached MarkupSafe-0.23.tar.gz Building wheels for collected packages: MarkupSafe Running setup.py bdist_wheel for MarkupSafe: started Running setup.py bdist_wheel for MarkupSafe: finished with status 'error' Complete output from command c:\projects\flask-react\flsk\scripts\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\admini~1\\appdata\\local\\temp\\pip-build-3ep417\\MarkupSafe\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -dc:\users\admini~1\appdata\local\temp\tmp8mkr70pip-wheel- --python-tag cp27: running bdist_wheel running build running build_py creating build creating build\lib.win32-2.7 creating build\lib.win32-2.7\markupsafe copying markupsafe\tests.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_compat.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_constants.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_native.py -> build\lib.win32-2.7\markupsafe copying markupsafe\__init__.py -> build\lib.win32-2.7\markupsafe running egg_info writing MarkupSafe.egg-info\PKG-INFO writing top-level names to MarkupSafe.egg-info\top_level.txt writing dependency_links to MarkupSafe.egg-info\dependency_links.txt warning: manifest_maker: standard file '-c' not found reading manifest file 'MarkupSafe.egg-info\SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'MarkupSafe.egg-info\SOURCES.txt' copying markupsafe\_speedups.c -> build\lib.win32-2.7\markupsafe running build_ext building 'markupsafe._speedups' extension error: [Error 2] The system cannot find the file specified ---------------------------------------- Running setup.py clean for MarkupSafe Failed to build MarkupSafe Installing collected packages: MarkupSafe, Jinja2, itsdangerous, flask Running setup.py install for MarkupSafe: started Running setup.py install for MarkupSafe: finished with status 'error' Complete output from command c:\projects\flask-react\flsk\scripts\python.exe -u -c "import setuptools, tokenize;__file__='c:\\users\\admini~1\\appdata\\local\\temp\\pip-build-3ep417\\MarkupSafe\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\admini~1\appdata\local\temp\pip-8v3_ep-record\install-record.txt --single-version-externally-managed --compile --install-headers c:\projects\flask-react\flsk\include\site\python2.7\MarkupSafe: running install running build running build_py creating build creating build\lib.win32-2.7 creating build\lib.win32-2.7\markupsafe copying markupsafe\tests.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_compat.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_constants.py -> build\lib.win32-2.7\markupsafe copying markupsafe\_native.py -> build\lib.win32-2.7\markupsafe copying markupsafe\__init__.py -> build\lib.win32-2.7\markupsafe running egg_info writing MarkupSafe.egg-info\PKG-INFO writing top-level names to MarkupSafe.egg-info\top_level.txt writing dependency_links to MarkupSafe.egg-info\dependency_links.txt warning: manifest_maker: standard file '-c' not found reading manifest file 'MarkupSafe.egg-info\SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'MarkupSafe.egg-info\SOURCES.txt' copying markupsafe\_speedups.c -> build\lib.win32-2.7\markupsafe running build_ext building 'markupsafe._speedups' extension error: [Error 2] The system cannot find the file specified
错误信息是否对任何人有意义? 谢谢
这个问题似乎与在virtualenv中安装的setuptools版本有关。 降级到一个较旧的版本修复了我。
从你的才能:
pip install setuptools==21.2.1 pip install flask
我昨天有这个问题。 我解决了它通过下载MarkupSafe 车轮和安装与点。 问题就在我头上。 一些关于编译器标志,以便在生成Speedups文件时抑制错误,我想。
1)从上面的链接下载轮子。
2)在Windows上,在与车轮相同的目录中打开一个命令窗口。
3)运行“pip安装”
在没有C编译器的系统上,Win7的MarkupSafe的setup.py被打破了。 (我保留一个独立的虚拟机VC ++的工作)我这样做是为了让它工作:
pip download MarkupSafe mkdir temp open MarkupSafe-0.23.tar.gz with 7-zip, extract all to temp cd temp edit setup.py line 119 to read: if 0: #not (is_pypy or is_jython): python setup.py install
我没有尝试调试setup.py来正常工作。 我只是想尝试Flask,因为它应该是轻量级和易于学习,官方文档说它安装在Windows上。 也许我应该回到Perl …
与其他海报不同,MarkupSafe的全局点子安装也不适用于我。
这些链接对问题有其他观点/见解: https : //github.com/pallets/markupsafe/issues/26 https://github.com/babun/babun/issues/315
好。 我知道了。 我不认为我安装烧瓶的方式有什么问题,正如我已经在我的问题中提到的那样,我可以在全局安装(不在virtualenv中运行)。 MarkupSafe包有一个使用c实现的扩展,我的本地机器上没有安装windows sdk,所以当ve_build_ext运行时,****总是失败**
如果不是这样(is_pypy或者is_jython),它会给出警告,这是我在全局安装时得到的。 但是,在virtualenv下运行时,它会崩溃。 所以我敢肯定,在virtualenv下运行时,hasattr(sys,'pypy_version_info')返回true。
有没有人知道“hasattr(sys,'pypy_version_info')”是什么意思?
# fail safe compilation shamelessly stolen from the simplejson # setup.py file. Original author: Bob Ippolito is_jython = 'java' in sys.platform is_pypy = hasattr(sys, 'pypy_version_info') def run_setup(with_binary): ext = Extension('markupsafe._speedups', ['markupsafe/_speedups.c']) ext_modules = [ext] if with_binary else [] def try_building_extension(): try: run_setup(True) except BuildFailed: LINE = '=' * 74 BUILD_EXT_WARNING = 'WARNING: The C extension could not be ' \ 'compiled, speedups are not enabled.' echo(LINE) echo(BUILD_EXT_WARNING) echo('Failure information, if any, is above.') echo('Retrying the build without the C extension now.') echo() run_setup(False) echo(LINE) echo(BUILD_EXT_WARNING) echo('Plain-Python installation succeeded.') echo(LINE)
如果不是(is_pypy或is_jython):try_building_extension()else:run_setup(False)
今天我有这个问题,并能够通过手动安装轮盘文件的MarkupSafe解决它,根据林肯的建议上面。 你可以在这里下载适当的文件。 有几个可用。 我不知道它们之间有什么区别,但是唯一能够安装在Windows 10上的是MarkupSafe-0.23-cp27-none-win32.whl 。 下载之后,我把它复制到我使用virtualenv创建的目录(不知道是否有必要,但是这是我做的),并用pip安装它:
C:\flask-test\venv>pip install MarkupSafe-0.23-cp27-none-win32.whl
从那个目录。 之后,我回到主目录并安装了Flask
C:\flask-test\venv>cd .. C:\flask-test>pip install Flask
它工作正常。