pip: Try to install mitmproxy-2.0.2 using pip on Windows 10, but Failed. Do i need to install MSVC Compiler?
- Pip version: 9.0.1
- Python version: 3.6
- Operating system: Windows 10 x64
Description:
Try to install mitmproxy-2.0.2 using pip on Windows 10, do i need to install MSVC Compiler?
What I’ve run:
D:\repo\py3-webservice-http-ALG>python -m pip install mitmproxy
Collecting mitmproxy
Using cached mitmproxy-2.0.2-py3-none-any.whl
Requirement already satisfied: certifi>=2015.11.20.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: pyparsing<2.3,>=2.1.3 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Collecting cssutils<1.1,>=1.0.1 (from mitmproxy)
Using cached cssutils-1.0.2-py3-none-any.whl
Requirement already satisfied: blinker<1.5,>=1.4 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: sortedcontainers<1.6,>=1.5.4 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: pydivert<2.1,>=2.0.3; sys_platform == "win32" in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: brotlipy<0.7,>=0.5.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: pyOpenSSL<17.0,>=16.0 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: passlib<1.8,>=1.6.5 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Collecting urwid<1.4,>=1.3.1 (from mitmproxy)
Using cached urwid-1.3.1.tar.gz
Requirement already satisfied: hyperframe<5,>=4.0.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: setuptools!=29.0.0,>=11.3 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: ruamel.yaml<0.14,>=0.13.2 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: construct<2.9,>=2.8 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: pyperclip<1.6,>=1.5.22 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: watchdog<0.9,>=0.8.3 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: click<7,>=6.2 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: requests<3,>=2.9.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Collecting jsbeautifier<1.7,>=1.6.3 (from mitmproxy)
Requirement already satisfied: pyasn1<0.3,>=0.1.9 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Collecting h2<3,>=2.5.1 (from mitmproxy)
Using cached h2-2.6.2-py2.py3-none-any.whl
Requirement already satisfied: html2text<=2016.9.19,>=2016.1.8 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Collecting tornado<4.5,>=4.3 (from mitmproxy)
Using cached tornado-4.4.3.tar.gz
Requirement already satisfied: cryptography<1.9,>=1.3 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: kaitaistruct<0.7,>=0.6 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from mitmproxy)
Requirement already satisfied: cffi>=1.0.0 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from brotlipy<0.7,>=0.5.1->mitmproxy)
Requirement already satisfied: six>=1.5.2 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from pyOpenSSL<17.0,>=16.0->mitmproxy)
Requirement already satisfied: argh>=0.24.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from watchdog<0.9,>=0.8.3->mitmproxy)
Requirement already satisfied: PyYAML>=3.10 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from watchdog<0.9,>=0.8.3->mitmproxy)
Requirement already satisfied: pathtools>=0.1.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from watchdog<0.9,>=0.8.3->mitmproxy)
Requirement already satisfied: idna<2.6,>=2.5 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from requests<3,>=2.9.1->mitmproxy)
Requirement already satisfied: urllib3<1.22,>=1.21.1 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from requests<3,>=2.9.1->mitmproxy)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from requests<3,>=2.9.1->mitmproxy)
Collecting editorconfig>=0.12.0 (from jsbeautifier<1.7,>=1.6.3->mitmproxy)
Using cached EditorConfig-0.12.1-py3-none-any.whl
Collecting hpack<4,>=2.2 (from h2<3,>=2.5.1->mitmproxy)
Using cached hpack-3.0.0-py2.py3-none-any.whl
Requirement already satisfied: asn1crypto>=0.21.0 in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from cryptography<1.9,>=1.3->mitmproxy)
Requirement already satisfied: packaging in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from cryptography<1.9,>=1.3->mitmproxy)
Requirement already satisfied: pycparser in c:\users\陈志祥\appdata\local\programs\python\python36\lib\site-packages (from cffi>=1.0.0->brotlipy<0.7,>=0.5.1->mitmproxy)
Building wheels for collected packages: urwid, tornado
Running setup.py bdist_wheel for urwid ... error
Failed building wheel for urwid
Running setup.py clean for urwid
Running setup.py bdist_wheel for tornado ... error
Failed building wheel for tornado
Running setup.py clean for tornado
Failed to build urwid tornado
Installing collected packages: cssutils, urwid, editorconfig, jsbeautifier, hpack, h2, tornado, mitmproxy
Running setup.py install for urwid ... error
Exception:
Traceback (most recent call last):
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\compat\__init__.py", line 73, in console_to_str
return s.decode(sys.__stdout__.encoding)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 17: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\commands\install.py", line 342, in run
prefix=options.prefix_path,
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\req\req_set.py", line 784, in install
**kwargs
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\req\req_install.py", line 878, in install
spinner=spinner,
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\__init__.py", line 676, in call_subprocess
line = console_to_str(proc.stdout.readline())
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\compat\__init__.py", line 75, in console_to_str
return s.decode('utf_8')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 17: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\commands\install.py", line 385, in run
requirement_set.cleanup_files()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\req\req_set.py", line 729, in cleanup_files
req.remove_temporary_source()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\req\req_install.py", line 977, in remove_temporary_source
rmtree(self.source_dir)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 49, in wrapped_f
return Retrying(*dargs, **dkw).call(f, *args, **kw)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 212, in call
raise attempt.get()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 247, in get
six.reraise(self.value[0], self.value[1], self.value[2])
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\six.py", line 686, in reraise
raise value
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 200, in call
attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\__init__.py", line 102, in rmtree
onerror=rmtree_errorhandler)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\shutil.py", line 494, in rmtree
return _rmtree_unsafe(path, onerror)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\shutil.py", line 393, in _rmtree_unsafe
onerror(os.rmdir, path, sys.exc_info())
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\__init__.py", line 114, in rmtree_errorhandler
func(path)
PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。: 'C:\\Users\\陈志祥\\AppData\\Local\\Temp\\pip-build-euib5x4_\\urwid'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\commands\install.py", line 385, in run
requirement_set.cleanup_files()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\build.py", line 38, in __exit__
self.cleanup()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\build.py", line 42, in cleanup
rmtree(self.name)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 49, in wrapped_f
return Retrying(*dargs, **dkw).call(f, *args, **kw)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 212, in call
raise attempt.get()
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 247, in get
six.reraise(self.value[0], self.value[1], self.value[2])
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\six.py", line 686, in reraise
raise value
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\_vendor\retrying.py", line 200, in call
attempt = Attempt(fn(*args, **kwargs), attempt_number, False)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\__init__.py", line 102, in rmtree
onerror=rmtree_errorhandler)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\shutil.py", line 494, in rmtree
return _rmtree_unsafe(path, onerror)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\shutil.py", line 384, in _rmtree_unsafe
_rmtree_unsafe(fullname, onerror)
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\shutil.py", line 393, in _rmtree_unsafe
onerror(os.rmdir, path, sys.exc_info())
File "C:\Users\陈志祥\AppData\Local\Programs\Python\Python36\lib\site-packages\pip\utils\__init__.py", line 114, in rmtree_errorhandler
func(path)
PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。: 'C:\\Users\\陈志祥\\AppData\\Local\\Temp\\pip-build-euib5x4_\\tornado'
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Comments: 16 (9 by maintainers)
I faced this issue and it was solved with
That installed pip 10
I suspect that the problem is that your temporary directory includes your username, which is non-ASCII, and I suspect you’re hitting an issue where the ANSI and OEM codepages set for Windows differ, which causes the sort of encoding issues you’re seeing (and is what we’ve hopefully fixed in the next version of pip). A possible workaround would be to set the
TEMP
environment variable to a different value.So one possible approach would be either to set
TEMP
to something likeC:\Temp
, which will let pip work at the cost of having to change your system configuration, or if you’re OK with using an unreleased version of pip, getting the development version installed by doing:(The last command is to check that you now have the dev version of pip installed).
Good news is, that pretty much confirms that it’s an encoding issue (which is fixed in the latest version of pip). The bad news is that you can’t use your current pip to upgrade itself because the current version has a bug 😦
I’m not sure what the best option is for a clean upgrade for you here. You could install by cloning the git repo and then using
setup.py install
but that’s messy. I’ll have a think and see if I can suggest an upgrade strategy for you.