๊ด๋ฆฌ์ ์ฐธ๊ณ ์ฌํญ: ์ฌ์ ํ ์ด ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ์ฌ๋์ #5599๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
pyenv ํ๊ฒฝ์์ pip install pip --user --upgrade
๋ฅผ ํตํด pip๋ฅผ 9.03์์ 10.0์ผ๋ก ์
๊ทธ๋ ์ด๋ํ ํ pip๋ ์์์ ๊ฑฐ๋ถํ๊ณ ๋์ ๋ค์์ ๋ฐ์์ํต๋๋ค.
Traceback (most recent call last):
File "/home/kleinernull/.pyenv/versions/3.6.2/bin/pip", line 7, in <module>
from pip import main
ImportError: cannot import name 'main'
Traceback (most recent call last):
File "/home/kleinernull/.pyenv/versions/3.6.2/bin/pip", line 7, in <module>
from pip import main
ImportError: cannot import name 'main'
์ธ ๊ฐ์ง ๋ค๋ฅธ pip ํ์ผ์ ๋ด์ฉ์ ๋ชจ๋ ๋์ผํฉ๋๋ค.
~ โฉ cat .pyenv/versions/3.6.2/bin/pip ~
#!/home/kleinernull/.pyenv/versions/3.6.2/bin/python3.6
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main as _main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(_main())
~ โฉ cat .pyenv/versions/3.6.2/bin/pip3 ~
#!/home/kleinernull/.pyenv/versions/3.6.2/bin/python3.6
# -*- coding: utf-8 -*-
import re
import sys
from pip import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
~ โฉ cat .pyenv/versions/3.6.2/bin/pip3.6 ~
#!/home/kleinernull/.pyenv/versions/3.6.2/bin/python3.6
# -*- coding: utf-8 -*-
import re
import sys
from pip import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
๋ด 3.6.1 ํ๊ฒฝ์์๋ ๋ง์ฐฌ๊ฐ์ง์์ต๋๋ค.
๋ง์คํฐ ๋ธ๋์น์ ์ฝ๋์ ๋ฐ๋ฅด๋ฉด ๊ฐ์ ธ์ค๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์์ผ ํฉ๋๋ค.
#!/home/kleinernull/.pyenv/versions/3.6.2/bin/python3.6
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main as _main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(_main())
์ด๋ ๊ฒ ํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค. ์ด๊ฒ์ด ์ ๊ทธ๋ ์ด๋ ์์ฒด ๋๋ ํ๊ฒฝ์ผ๋ก์์ pyenv์ ๊ด๋ จ์ด ์๋์ง ์ฌ๋ถ๋ ์ ์ ์์ต๋๋ค.
์๋ ํ์ธ์ @KleinerNull!
์ด๊ฒ์ด ์ ๊ทธ๋ ์ด๋ ์์ฒด ๋๋ ํ๊ฒฝ์ผ๋ก์์ pyenv์ ๊ด๋ จ์ด ์๋์ง ์ฌ๋ถ๋ ์ ์ ์์ต๋๋ค.
์ด๊ฒ์ ํ๊ฒฝ์ ๋ฌธ์ ๋ผ๊ณ ์๊ฐํฉ๋๋ค. pyenv์์ ๋ฌธ์ ๋ฅผ ์ฌ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ฑฐ๊ธฐ์ ์๋ ์ฌ๋๋ค์ด ์ด์ ๋ํด ๋ ผํ/๊ณ ์น ์ ์๋ ๋ ๋์ ์์น์ ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
@pradyunsg
pyenv repo์์ ๋ฌธ์ ๋ฅผ ์ด์์ต๋๋ค.
์ฐ๋ฆฌ๋ ์ด ๋ฌธ์ ๋ก ๊ณ ํต๋ฐ๊ณ ์์ต๋๋ค. ํ์ดํ๋ผ์ธ์ด ์์๋์์ต๋๋ค. ์คํ ์ค์ธ ์์ :
11 #upgrade pip and install uwsgi
12 pip install --user --upgrade pip
13 pip install uwsgi
์ฐ๋ถํฌ 16.04
ํ์ด์ฌ3.6
์ฐ๋ฆฌ๋ ๊ฐ์ ๋ฌธ์ ์ ์ง๋ฉดํด ์์ต๋๋ค.
// in host
$ docker pull ubuntu:xenial
$ docker run --name pip-test --rm -it ubuntu:xenial bash
// in container
# apt update
# apt install -y python-dev python-pip
# pip install --upgrade pip
Collecting pip
Downloading pip-10.0.0-py2.py3-none-any.whl (1.3MB)
100% |################################| 1.3MB 865kB/s
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-10.0.0
# pip install requests
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
์ฌ๊ธฐ๋ ๊ฐ์ .. @HayaoSuzuki ์ ๋์ผํ ์ถ๋ ฅ์ด๋ฉฐ pyenv๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค.
pyenv ์ธ๋ถ์์ ์ด๊ฒ์ ์ป๋ ๊ฒฝ์ฐ #5221๊ณผ ๊ด๋ จ์ด ์์ ๊ฐ๋ฅ์ฑ์ด ๋ ๋๋ค๊ณ ์๊ฐํฉ๋๋ค.
Ubuntu 16.04์ pip install --user --upgrade pip
๋ ์ค๋จ๋ฉ๋๋ค.
ํฅ๋ฏธ๋กญ๊ฒ๋ ์ฌ์ด ์ค์น pip๋ 10.0.0์ ์ค์นํ์ง๋ง ๋ฌธ์ ๋ฅผ ๋ํ๋ด์ง ์์ต๋๋ค.
```
// ํธ์คํธ์์
$ docker pull ์ฐ๋ถํฌ:xenial
$ docker run --name pip-test --rm -it ์ฐ๋ถํฌ:xenial bash
// ์ปจํ ์ด๋์
/usr/local/lib/python2.7/dist-packages/pip-10.0.0-py2.7.egg ์ค์น
pip์ ๋ํ ์ฒ๋ฆฌ ์ข
์์ฑ
pip์ ๋ํ ์๋ฃ ์ฒ๋ฆฌ ์ข
์์ฑ
์์ฒญ ์์ง
๋ค์ด๋ก๋ ์์ฒญ-2.18.4-py2.py3-none-any.whl(88kB)
100% |##################################| 92kB 2.9MB/s
์ธ์ฆ์ ์์ง>=2017.4.17(์์ฒญ์์)
certifi-2018.1.18-py2.py3-none-any.whl(151kB) ๋ค์ด๋ก๋ ์ค
100% |##################################| 153kB 4.4MB/s
์์ง chardet<3.1.0,>=3.0.2(์์ฒญ์์)
chardet-3.0.4-py2.py3-none-any.whl(133kB) ๋ค์ด๋ก๋ ์ค
100% |##################################| 143kB 4.5MB/s
idna<2.7,>=2.5 ์์ง ์ค(์์ฒญ์์)
idna-2.6-py2.py3-none-any.whl ๋ค์ด๋ก๋(56kB)
100% |##################################| 61kB 7.4MB/s
urllib3<1.23,>=1.21.1 ์์ง(์์ฒญ์์)
urllib3-1.22-py2.py3-none-any.whl(132kB) ๋ค์ด๋ก๋
100% |##################################| 133kB 4.4MB/s
์์ง๋ ํจํค์ง ์ค์น: certifi, chardet, idna, urllib3, ์์ฒญ
certifi-2018.1.18 chardet-3.0.4 idna-2.6 requests-2.18.4 urllib3-1.22๊ฐ ์ฑ๊ณต์ ์ผ๋ก ์ค์น๋์์ต๋๋ค.
```
๊ทธ pip๊ฐ ๋ค๋ฅธ ์์น์ ์ค์น๋์ด ๋ ์ด์ ์ ์ญ pip์ ์ํฅ์ ๋ฏธ์น์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ผ์ด ์ผ์ด ์๋๋๋ค. ์ด๋ ๋ํ ์ด์ Python์ ๋ํ ๋งค์ฐ ํฅ๋ฏธ๋ก์ด ์์ ์ธํธ๋ฅผ ๊ฐ๊ฒ ๋์์์ ์๋ฏธํฉ๋๋ค.
์ฌ๊ธฐ์ https://github.com/pypa/pip/issues/5221 ์ ๋ณด๊ณ ๋ ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ ๊ฐ ํ๊ฒฝ์ด๋ผ๋ ์ ์ ๊ฐ์ฌํ์ง๋ง, ์์ธ์ ์ฃผ๋ก from pip import main
๊ฐ์ ธ์ค๊ธฐ๊ฐ $# ํจํค์ง๋ก ์์๋์๊ธฐ ๋๋ฌธ์
๋๋ค pip.main
์ด(๊ฐ) pip._internal.main
(์ผ)๋ก ์ด๋๋์์ต๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด pip.main
์์ pip._internal.main
๋ก ๋งํฌ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๊ฐ๋จํฉ๋๋ค(ํ๊ฒฝ์ ์์ ํ๋ ๊ฒ์ ๋ง์ ์ฌ๋๋ค์๊ฒ ์ฌ๋ฌ ์์น์์ ๋ง์ ์์
์
๋๋ค). ์ด๊ฑฐ ์ํ ์ด์ ๊ฐ ์๋์?
@davidjlloyd
์ด ์ฃผ์์ ์ด ์์ ์ ์ํํ์ง ์๋ ๊ฒ์ ๋ํ ๋ช ๊ฐ์ง ์ ๋ณด๋ฅผ ์ ๊ณตํ์ง๋ง ์ด๊ฒ์ด pip ์คํฌ๋ฆฝํธ ์์ฒด์๋ ์ค์ํ์ง ์์ ํ ํ์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ๋๋ฅผ ์ํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
@davidjlloyd from pip import main
๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์๋์ง ์์๊ธฐ ๋๋ฌธ์
๋๋ค. ๊ทธ๋ฆฌ๊ณ "์, ํ์ง๋ง ๊ฐ๋จํ API์ด๊ณ ์ ๋๋ก ์๋ํ์ต๋๋ค"๋ผ๊ณ ๋งํ๊ธฐ๋ ์ฝ์ง๋ง ์ค์ ๋ก๋ ๊ทธ๋ ์ง ์์์ต๋๋ค. ์ฐ๋ฆฌ๋ ํน์ ๋์์ ๊ธฐ๋ํ๋ ์ฌ๋๋ค๋ก๋ถํฐ ์ฌ๋ฌ ๋ฒ๊ทธ ๋ณด๊ณ ์๋ฅผ ๋ฐ์์ต๋๋ค. pip.main
๊ฐ ๋ก๊น
์์คํ
์ ๊ตฌ์ฑ์ ๋ณ๊ฒฝํ์ง ์์ ๊ฒ์ผ๋ก ์์ํ๋ฉด์ ์ฌ๋ฌ ์ค๋ ๋์์ pip.main
์คํ, ...)
์ฌ๋๋ค์๊ฒ ์ด๋ ๊ฒ ํด์๋ ์ ๋๋ค๊ณ ๊ณ์ ์ค๋ช
ํ๊ณ ์ฌ๋๋ค์ด "ํธ์ถํ ํจ์๋ฅผ ์ฐพ์ ์ ์์ผ๋ฉด ์ง์๋ฉ๋๋ค"๋ผ๊ณ ๊ฐ์ ํ๋ค๋ ์ฌ์ค์ ๊ณ์ ์ฒ๋ฆฌํ๋ ๋์ ๋ชจ๋ ๊ฒ์ _internal
๋ค์์คํ์ด์ค๋ก ์ฎ๊ฒผ์ต๋๋ค. ๋น์ ์ด ๊ทธ๊ฒ์ ํธ์ถํด์๋ ์๋๋ค๋ ๊ฒ์ ์ถฉ๋ถํ ๋ถ๋ช
ํ ํ์ญ์์ค.
๋ถ๋ง์ ๋๋ถ๋ถ์ pip.main
๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋๋ค๋ก๋ถํฐ ์์ต๋๋ค. ์์ด๋ฌ๋ํ๊ฒ๋ subprocess
๋ฅผ ํตํด ์ง์๋๋ ๋ช
๋ น์ค ๋ฐฉ์์ผ๋ก pip๋ฅผ ํธ์ถ ํ๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์
๋๋ค. ๋ฐ๋ผ์ ๊ฐ๋ฅํ ๋ชจ๋ ํ์ ์ค์์ ์ด๊ฒ์ด ๊ฐ์ฅ ๊ณ ์น๊ธฐ ์ฝ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๋๋ค์ ๋ช ๋ฌ ๋์ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ์์์๋ ์ฌ์ ํ ๊ณ ์น์ง ์์์ต๋๋ค. (๋ฆฌ๋
์ค ๋ฐฐํฌํ์ ๊ณตํํ๊ธฐ๋ ํ์ง๋ง pip๋ฅผ ์ฌ์ฉํ์ฌ ์์คํ
ํจํค์ง๋ฅผ ์
๊ทธ๋ ์ด๋ํ๋ ์ฌ๋๋ค์ ์ง์ํ์ง ์์ผ๋ฏ๋ก ๋ฐฐํฌํ์์ ์ ๊ณตํ๋ ์คํฌ๋ฆฝํธ๊ฐ ์ค๋จ๋๋ ๊ฒฝ์ฐ #5221๊ณผ ๊ฐ์ ๋ณด๊ณ ๋ pip๋ฅผ ํด๊ฒฐํ๋ ๋ฐฐํฌํ์ ์คํจ๊ฐ ์๋๋ผ ๊ทผ๋ณธ์ ์ผ๋ก ์ฌ์ฉ์ ์ค๋ฅ์
๋๋ค. 10๊ฐ์ง ๋ณ๊ฒฝ ์ฌํญ - ์๋ฒฝํ๊ฒ ์ ์ฒ๋ฆฌ๋๊ณ ์๋ค๊ณ ํ์ ํฉ๋๋ค.
๋ํ ์ด ๋ฌธ์ ๊ฐ ์ด์ ์ ๋งค์ฐ ์์ ์ ์ธ ๋์ปค ์ด๋ฏธ์ง ๋น๋ ํ๋ก์ธ์ค๋ฅผ ์์ ํ ํ๊ดดํ๊ณ ์์์ ํ์ธํ ์ ์์ต๋๋ค. ๋ค์์ ๋์ปค ์ด๋ฏธ์ง ๋น๋ ํ๋ก์ธ์ค ๋ด์์ ์ํํ๋ ์ต์ ์์ ์ ์์ ๋๋ค.
+ pip install -U pip setuptools
Collecting pip
Downloading https://files.pythonhosted.org/packages/62/a1/0d452b6901b0157a0134fd27ba89bf95a857fbda64ba52e1ca2cf61d8412/pip-10.0.0-py2.py3-none-any.whl (1.3MB)
Collecting setuptools
Downloading https://files.pythonhosted.org/packages/20/d7/04a0b689d3035143e2ff288f4b9ee4bf6ed80585cc121c90bfd85a1a8c2e/setuptools-39.0.1-py2.py3-none-any.whl (569kB)
Installing collected packages: pip, setuptools
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-10.0.0 setuptools-39.0.1
...
+ pip install jupyter opencv-python plyfile pandas
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
์ฐ๋ฆฌ๋ฅผ ์ํ ์์ ์ฌํญ์ pip 9.03์ ๊ณ ์ ๋์ด ์์ผ๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
pip install --upgrade pip==9.0.3
๋์ ์
pip install -U pip
๋ช ๋ฐฑํ ์์ ์ด์ง๋ง ๋ค๋ฅธ ์ฌ๋์ ๋์ธ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ!
@peteflorence ์๋ง๋ docker๋ฅผ ์คํํ ๋ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ ๋ค์ ํด๋น ์ด๋ฏธ์ง์ ๋ฃจํธ๋ก pip install -U pip setuptools
๋ฅผ ์คํํ๊ณ ์์ต๋๊น? ๋ค๋ฅธ ํจํค์ง๋ฅผ ํจ๊ป ์ค์นํ๋ ๊ฒ๋ฟ์ด๋ผ๋ฉด ์ต์ pip/setuptools๊ฐ ํ์ํ ์ด์ ๊ฐ ์์ต๋๊น? ๋จ์ํ ๋ฐฐํฌํ ํจํค์ง๋ก ์ ๊ณต๋๋ ์ต์ pip/setuptools๋ก ์
๊ทธ๋ ์ด๋ํ ์ ์์ต๋๊น?
์ด๊ฒ์ด ๋น์ ์๊ฒ ๋ฌธ์ ๋ผ๋ ์ ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๋์ปค ๋น๋๊ฐ ์ผ๋ฐ OS์ ์๋ ๊ฒฝ์ฐ๋ณด๋ค ๋ฃจํธ๋ก ์์
์ ์ํํ๋ ค๋ ๊ฒฝํฅ์ด ๋ ๋์ ๊ฒ ๊ฐ์ต๋๋ค(์๋ง๋ ๋์ปค ์ด๋ฏธ์ง๊ฐ ๊ฒฉ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์ผ ์ ์์). ๊ทธ๋ฌ๋ ์ด๊ฒ์ ํ๋ ๊ฒ์ ์ฌ์ ํ โโ์ข์ ์๊ฐ์ด ์๋๋๋ค. ๋ฌธ์ ๋ pip๊ฐ /usr/bin/pip
๋ฅผ ๊ด๋ฆฌํ์ง ์์ผ๋ฏ๋ก pip 10์์ ์๋ํ๋๋ก "๊ณ ์ "ํ ๋ฐฉ๋ฒ์ด ์๋ค๋ ๊ฒ์
๋๋ค.
/usr/bin/pip
์ฌ์ฉ์์ python -m pip
์ฌ์ฉ์ผ๋ก ์ ํํ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ์ฌ์ ํ โโโโ์ง์๋์ง ์์ผ๋ฉฐ ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค (๊ธฐ๋ณธ OS ๊ณต๊ธ ์
์ฒด๊ฐ ์์คํ
pip์ ์ด๋ค ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ๋์ง ์ ์ ์์). ๊ทธ๋ฌ๋ ๋ ์ค๋ ์ ๋ ฌํ๋ ๋์ /usr/bin/pip
์ ๋ฌธ์ ๋ฅผ ํผํ ๊ฒ์
๋๋ค. ๊ทํ์ ๋ฌธ์ ์ ๋ํ ์ฉ์ด ์๋ฃจ์
.
pip 9์ ๊ณ ์ ํ๋ ๊ฒ๋ ์๋ฃจ์ ์ด์ง๋ง, pip 9๊ฐ ์ ์์ด๋ฉด OS pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๋ ์ด์ ๋ ๋ฌด์์ ๋๊น? ๊ณต๊ธ์ ์ฒด๊ฐ pip 9์ ํจํค์ง ๋ฒ์ ์ ์ ๊ณตํ์ง ์์ต๋๊น?
์ฌ๋๋ค์๊ฒ ์ด๋ ๊ฒ ํด์๋ ์ ๋๋ค๊ณ ๊ณ์ ์ค๋ช ํ๊ณ ์ฌ๋๋ค์ด "ํธ์ถํ ํจ์๋ฅผ ์ฐพ์ ์ ์์ผ๋ฉด ์ง์๋ฉ๋๋ค"๋ผ๊ณ ๊ฐ์ ํ๋ค๋ ์ฌ์ค์ ๊ณ์ ์ฒ๋ฆฌํ๋ ๋์ ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ฒ์ _internal ๋ค์์คํ์ด์ค๋ก ์ด๋ํ์ฌ ๋น์ ์ ๊ทธ๊ฒ์ ํธ์ถํด์๋ ์๋ฉ๋๋ค.
๋ช ๊ฐ์ง ์ฃผ์ ๋ฆด๋ฆฌ์ค์ ๋ํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง ์๋ ๋์ ์ง์๋์ง ์๋ ๊ธฐ๋ฅ์ ๊ธฐ์กด ์ฌ์ฉ์ ์ ๊ทน์ ์ผ๋ก ์ค๋จํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ธ์ง ํ์ ํ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ์ ์ด๊ธฐ ๋ฐ์์ pip๋ฅผ 9.0.3์ผ๋ก ๋ค์ ๊ณ ์ ํ๋ ๊ฒ์ด์์ผ๋ฉฐ ๋ ๊ฒ์ผ๋ฅธ ๊ฐ๋ฐ์๋ ๊ทธ ์์ ์์ ์๋ง๋ ํ๋ฃจ๋ผ๊ณ ๋ถ๋ฅผ ๊ฒ์ ๋๋ค. ์ด๋ก ์ธํด ๋ง์ ์ฌ์ฉ์๊ฐ ์ด์ ๋ฆด๋ฆฌ์ค์ ์๊ณ ํ๊ฒ ์ง์ฐฉํ๊ฒ ๋๋ฉฐ, ์ด๋ฅผ ์ํ๋ ์ฌ๋์ ์์ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๋น์ ์ ๋๊ธฐ๋ ์๋ฏธ๊ฐ ์์ผ๋ฉฐ ์ต์ข ๊ฒฐ๊ณผ๋ ๋์ผํฉ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ ๋ชจ๋ ์ฌ์ฉ์์ ๊ฒฝ์ฐ ์์คํ ๋๋ pyenv ์ค์น๋ฅผ ๊ต์ฒดํ๊ธฐ ์ํ ๊ฐ์ฅ ์ข์ ์๋ฃจ์ ์ด @standag์์ ์น์ ํ๊ฒ ์ ๊ณต๋์๋ค๊ณ ์๊ฐํฉ๋๋ค. https://github.com/pypa/pip/issues/5221#issuecomment -381568428
์ด ์๋ฃจ์ ์ @peteflorence ์ ๊ฐ์ Docker์์ ์ค๋๋ ๋ฆด๋ฆฌ์ค๋ ์ด์ ๊ฐ์ ๋์ฐํ ๊ฒ์ ๊ณ ์ ํ์ง ์๊ณ ๊ตฌ์ถํ๋ ๋ชจ๋ ์ฌ๋์๊ฒ ์๋ํด์ผ ํฉ๋๋ค.
curl https://bootstrap.pypa.io/get-pip.py | python3
pip install -U pip
๋์
pip2 pip2 install --upgrade pip
์ ๊ฒฝ์ฐ
python2์ python3 ๋ชจ๋ pyenv๋ก ์
๊ทธ๋ ์ด๋ํ๋๋ฐ ์ด์ pip2๊ฐ ์๋ํ์ง ์๊ณ pip3์ด ์๋ํฉ๋๋ค.
pip2์ pip3์ ๋น๊ตํ ํ ์ฐจ์ด์ ์ ๊ฐ์ ธ์ค๊ธฐ ํ์
๋๋ค.
ํ2
from pip import main
ํ3
from pip._internal import main
pip2 import ํ์ pip3 ๋ฒ์ ์ผ๋ก ๋์ฒดํ๋ฉด ์๋ํฉ๋๋ค.
๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
๋์ผํ ๋ฌธ์ ์ด์ง๋ง ์๋ฃจ์ ์ผ๋ก ํด๊ฒฐ๋จ: https://github.com/pypa/pip/issues/5240#issuecomment -381673100
๊ฐ์ ๋ฌธ์ :
+ pip install --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/62/a1/0d452b6901b0157a0134fd27ba89bf95a857fbda64ba52e1ca2cf61d8412/pip-10.0.0-py2.py3-none-any.whl
(1.3MB)
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-10.0.0
+ pip install awscli requests simplejson
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
์ด์ ์ด์ํฉ๋๋ค. pip 10์ /usr/local/bin์ ์ค์นํ๊ณ ์ด๋ /usr/bin ์ด์ ์ PATH์์ ์ฒซ ๋ฒ์งธ์ด์ง๋ง ์ ์ ธ๋ก ์ด๋ํ ๋๊น์ง๋ ์ฌ์ฉํ์ง ์์ต๋๋ค. ์๋ก์ด awscli๋ฅผ ์์ผ๋ก ์ค์นํ๋ ค๊ณ ์ด ์์์ ๊ฐ์ ๋ ์ด๋ฐ ์ผ์ด ๋ฐ์ํ๋ ๊ฒ์ ๋ณด์์ต๋๋ค...
$ python --version
Python 2.7.12
$ pip --version
pip 10.0.0 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
$ sudo pip install --upgrade awscli
<blah blah>
$ aws --version
aws-cli/1.11.13 Python/3.5.2 Linux/4.4.0-1049-aws botocore/1.4.70
$ /usr/local/bin/aws --version
aws-cli/1.15.4 Python/2.7.12 Linux/4.4.0-1049-aws botocore/1.10.4
$ which aws
/usr/local/bin/aws
$ echo $PATH
/home/ec2-user/bin:/home/ec2-user/.local/bin:/opt/bamboo-elastic-agent/bin:/opt/jdk-8/bin:/opt/maven-2.1/bin:/opt/maven-1.0.2/bin:/opt/ant-1.9/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/bin:/bin:/opt/puppetlabs/bin
@pfmoore ๋๊ธ ๊ฐ์ฌํฉ๋๋ค. ์, ์ฐ๋ฆฌ์ ๋์ปค ์ด๋ฏธ์ง๋ ๋ถ๋ช ํ pip 9๊ฐ ํ์ํ๊ณ ์ฐ๋ฆฌ๋ nvidia cuda 8.0 ๋์ปค ์ด๋ฏธ์ง์ ๊ทธ๊ฒ์ ๊ฐ์ง๊ณ ์์ง ์์์ผ ํ๋ ๋ค๋ฅธ ๋ง์ ๊ฒ๋ค์ ์์ํฉ๋๋ค. ๊ณ ์ ์ ์ฐ๋ฆฌ์๊ฒ ์ข์ ์๋ฃจ์ ์ ๋๋ค. ์ด๊ฒ์ ์ฐ๊ตฌ ์์คํ ์ด๋ฏ๋ก ์ฝ๋๋ฅผ ํฉ๋ฆฌ์ ์ผ๋ก ์ ๊ทธ๊ธฐ๋ฅผ ์ํฉ๋๋ค. ํ์ง๋ง ๋ถ๋ช ํ ๋ค๋ฅธ ๋ง์ ์ฌ๋๋ค์๊ฒ๋ pip 10๊ณผ์ ํธํ์ฑ์ ์ ๊ณตํ๋ ์๋ฃจ์ ์ ์ํ ๊ฒ์ ๋๋ค.
์ด์ ์ด์ํฉ๋๋ค. pip 10์ /usr/local/bin์ ์ค์นํฉ๋๋ค.
์ ๋ Unix ์ฌ์ฉ์๋ ์๋์ง๋ง ์ผ๋ถ ์ฌ๋๋ค์ด ์์์ "rehashing"์ ๋ํด ์ด์ผ๊ธฐํ๋ ๊ฒ์ ๋ณธ ๊ธฐ์ต์ด ์์ต๋๊น? ๊ทธ๊ฒ์ด ๋ฌธ์ ๊ฐ ๋ ์ ์์ต๋๊น? bash๋ ๊ฒฝ๋ก ์กฐํ๋ฅผ ์บ์ํ๊ณ ๊ฒฝ๋ก ๊ฒ์์ ๋ค์ ์คํํ๋ผ๋ ๋ฉ์์ง๋ฅผ ํ์ํด์ผ ํฉ๋๊น?
์, ์ฐ๋ฆฌ์ ๋์ปค ์ด๋ฏธ์ง๋ ๋ถ๋ช ํ pip 9๊ฐ ํ์ํ์ต๋๋ค ...
์ฟจ - ํ์คํ pip 9์ ๊ณ ์ ํ๋ ๊ฒ์ด ๊ทํ์ ๊ฒฝ์ฐ ํฉ๋ฆฌ์ ์ธ ์๋ฃจ์ ์ ๋๋ค. ๋๋ ์ฌ๋๋ค์ด ํ๊ฒฝ์ ์์ ํด์ผ ํ๋ ์๊ฐ์ ๋ฏธ๋ฃจ๊ณ ๊ทธ๋ค์ ๋ณด๊ณ ๋งน๋ชฉ์ ์ผ๋ก ๋ณต์ฌํ ์ํ์ด ์๊ธฐ ๋๋ฌธ์ "pip 9์ ๊ณ ์ "์ ๋ํ ์ ์์ ๊ฑฐ๋ถํ์ง ์๋ ๊ฒ์ ๋ํด ์ฝ๊ฐ ์ด๋ฆฌ๋ฅ์ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ํ์คํ ๊ทํ์ ์๊ตฌ ์ฌํญ์ ๋ํด ์๊ฐํ๊ณ ๊ณ ์ ์ด ๊ทํ์๊ฒ ์ ํฉํ๋ค๊ณ ๊ฒฐ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทํ์ ์๊ฒฌ์ ๋น๋ ์์๋ก ์ฌ์ฉํ์ฌ ์ฃ์กํฉ๋๋ค :-)
์ฐ๋ฆฌ๋ pip 9์ ๊ณ ์ ํ๊ณ ๊ทธ๊ฒ์ด ์ฐ๋ฆฌ๋ฅผ "๊ณ ์ "ํ์ง๋ง ๋ฌผ๋ก ์ฐ๋ฆฌ๋ ์ด๋ ์์ ์์ pip 10์ ์ฌ์ฉํ ์ ์๋ ๋ฐ ๊ด์ฌ์ด ์์ต๋๋ค.
pip2 install xx @HayaoSuzuki ๋ฅผ ์ฌ์ฉํด๋ณด์ญ์์ค
pip 9.0.0์ผ๋ก ๋์๊ฐ๋ ๋ฐฉ๋ฒ..
๊ทธ๊ฒ์ ์ฌ์ ํ โโ๋์๊ฒ ๊ฐ์ ์ค๋ฅ๋ฅผ ๋ณด์ฌ์ค๋๋ค. ๋ชจ๋ ๋จ๊ณ๋ฅผ ์์ฑํ์ญ์์ค
@swtt123 pip install pip==9.0.1
์(๋ฅผ) ์๋ํ ์ ์์ต๋๋ค.
pip 10.0, ๋๋ ์ง๋ฉด
AttributeError: 'module' object has no attribute 'main'
pip.main(['install', '-r', 'requirements.txt'])
๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ๋ ๋์
@p00j4 ํ๋ก๊ทธ๋จ ๋ด์์ pip ๊ฐ์ ธ์ค๊ธฐ๋ ์ง์๋์ง ์์ต๋๋ค. ๋ฌธ์ ์ฐธ์กฐ
์ค! ๋๋ ๊ทธ๊ฒ์ ์ดํดํ์ง๋ง, ์ง๊ธ์ ๋ง์ ์ฅ์๋ฅผ ๋ฐ๊ฟ์ผ ํ๋ค.
๋จธ๋ฆฌ์ ๋ํด @pfmoore ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์คํ ๊ฐ๋ฅํ ์์น๋ฅผ ์บ์ฑํ๋ bash์ ์ฃผ์ํ์ญ์์ค.
$ which pip
/usr/bin/pip
$ pip install --user pip
Collecting pip
(...)
Successfully installed pip-10.0.0
$ pip
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
$ which pip
/usr/bin/pip
$ hash -d pip # this clears the 'pip' entry from bash's executables locations hash table
$ which pip
/home/zwinny/.local/bin/pip
$ pip --version
pip 10.0.0 from /home/zwinny/.local/lib/python2.7/site-packages/pip (python 2.7)
Raspberry Pi 3B+์ ์๋ก์ด Raspbian ์ค์น๋ฅผ ๋ง๋ค์์ต๋๋ค. ํน๋ณํ ๊ฒ์ ์์ต๋๋ค - ์์ ๋ฐ๋๋ผ ๊ตฌ์ฑ - ์ง๊ธ๊น์ง ๋ชจ๋ ๊ฒ์ด ์๋์์ต๋๋ค.
์ค์น ํ๋ก์ธ์ค์ ๊ฐ์ฅ ๋ง์ง๋ง ๋จ๊ณ์ ๋๋ฌํ์ต๋๋ค.
pip install --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/62/a1/0d452b6901b0157a0134fd27ba89bf95a857fbda64ba52e1ca2cf61d8412/pip-10.0.0-py2.py3-none-any.whl (1.3MB)
100% |โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ| 1.3MB 101kB/s
Installing collected packages: pip
Successfully installed pip-10.0.0
... ์ด์ pip๊ฐ ์์ ํ ์ค๋จ๋์์ต๋๋ค.
$ pip
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
์์ ์๊ฒฌ์ ๋ฐ๋ผ ~i/.local/bin/pip๊ฐ ์ ์คํ๋๋ ๊ฒ์ ํ์ธํ์ต๋๋ค. ์ค๋ฅ๋ /usr/bin/pip์์ ๋ฐ์ํฉ๋๋ค. hash -d pip๋ฅผ ์คํํด๋ ์บ์๋ ์์น๊ฐ ์ ๋ฐ์ดํธ๋์ง ์์์ต๋๋ค.
์ต์ ๋ผ์ธ -Iv ๋ฐ --force-reinstall์ ํตํด 9.0.1๋ก ๊ฐ์ ๋ค์ด๊ทธ๋ ์ด๋ํด๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์์ต๋๋ค. ๋ถ๋ช ํ pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ์ง ์๋ ๊ฒ ์ธ์ ์ ์ผํ ํด๊ฒฐ์ฑ ์ ~/.local/bin/pip์์ pip๋ฅผ ์คํํ๋ ๊ฒ์ ๋๋ค.
python -m pip install --upgrade pip
๋๋ฅผ ์ํด ์ผํ๋ค. ๋๋ ๊ทธ๊ฒ์ด ๋๊ตฐ๊ฐ๋ฅผ ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ค๋ ์๋ก์ด Ubuntu ๋ฐฐํฌํ์ ์ค์นํ๊ณ ๋ช ๊ฐ์ง ๊ธฐ๋ณธ Python ํจํค์ง๋ฅผ ์ค์นํ์ฌ ์คํํ๋ ค๊ณ ํ์ต๋๋ค. pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋์ด ๋ช ๋ น์ ์คํํ์ต๋๋ค. ์ด pip๋ฅผ ๋ฒ์ 10์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ๋๋ฐ ์ด ์ค๋ ๋์ ๋งจ ์์ ์๋ ๋์ผํ ์ค๋ฅ๋ก ์ธํด ๋ถ๋ช ํ ๊นจ์ก์ต๋๋ค. ๋๋ ์ผ๋ฐ ์ฌ์ฉ์๊ฐ pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๊ณ ์ข์ํ๋ ํจํค์ง๋ฅผ ์ค์นํ๋ ๊ฒ ์ธ์๋ ์๋ฌด ๊ฒ๋ ํ์ง ์์์ต๋๋ค. pyenv๋ฅผ ์ฌ์ฉํ์ง๋ ์์ต๋๋ค.
์ฌ๊ธฐ์ ์๋ ์๋ฃจ์
์ค ์ด๋ ๊ฒ๋ ๋ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง ๋ชปํฉ๋๋ค. python -m pip install --upgrade pip
๋ฅผ ์คํํ๋ฉด "์๊ตฌ ์ฌํญ์ด ์ด๋ฏธ ์ต์ ์ํ์
๋๋ค"๊ฐ ํ์๋ฉ๋๋ค. ๋ฒ์ 9๋ก ๋ค์ด๊ทธ๋ ์ด๋ํ๋ ค๊ณ ํ๋ฉด ๋์ผํ ์ด๊ธฐ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
์ด ์ค๋ ๋๋ฅผ ๋ค์ ์ฝ์ ํ ~/.local/bin/pip
๋ฅผ ์ฌ์ฉํ๋ @sfsdfd ์ ์๋ฃจ์
์ด ๋ง์นจ๋ด ์๋ํ์ต๋๋ค.
~/.local/bin/pip install my-favourite-package
๋ถ๋ช
ํ ์ด๊ฒ์ ์ด์ ๋ฒ์ ์ pip๋ก ๋๋๋ ค (์ฑ๊ณต์ ์ผ๋ก) ์๋ํ๊ณ ์์ต๋๋ค. ์ด๊ฒ์ ~/.bashrc
์ ์ถ๊ฐํ๋ ๊ฒ์ด ๋์๊ฒ ๋ ๋์ ์์ ์
๋๋ค.
export PATH=$PATH:~/.local/bin
ํฐ๋ฏธ๋์ ๋ค์ ์์ํ๊ธฐ๋ง ํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
/usr/bin/pip
์ ์ฝ๋๋ฅผ ์
๋ฐ์ดํธํ๊ณ from pip import main
๋ฅผ from pip._internal import main
๋ก ๋ณ๊ฒฝํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
์์ธํ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
$ dpkg -S /usr/bin/pip
python-pip: /usr/bin/pip
$ dpkg -S /usr/bin/pip2
python-pip: /usr/bin/pip2
$ apt-file search /usr/bin/pip
colorized-logs: /usr/bin/pipetty
pipebench: /usr/bin/pipebench
pipemeter: /usr/bin/pipemeter
pipexec: /usr/bin/pipexec
python-pip: /usr/bin/pip
python-pip: /usr/bin/pip2
python3-pip: /usr/bin/pip3
rt-tests: /usr/bin/pip_stress
pip install --upgrade pip
์ดํ:
$ pip
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
$ pip2
Traceback (most recent call last):
File "/usr/bin/pip2", line 9, in <module>
from pip import main
ImportError: cannot import name main
$ cat /usr/bin/pip
#!/usr/bin/python
# GENERATED BY DEBIAN
import sys
# Run the main entry point, similarly to how setuptools does it, but because
# we didn't install the actual entry point from setup.py, don't use the
# pkg_resources API.
from pip import main
if __name__ == '__main__':
sys.exit(main())
/usr/bin/pip
์
๋ฐ์ดํธ ํ:
$ cat /usr/bin/pip
#!/usr/bin/python
# GENERATED BY DEBIAN
import sys
# Run the main entry point, similarly to how setuptools does it, but because
# we didn't install the actual entry point from setup.py, don't use the
# pkg_resources API.
# from pip import main
from pip._internal import main
if __name__ == '__main__':
sys.exit(main())
$ pip --version
pip 10.0.0 from /home/devops/.local/lib/python2.7/site-packages/pip (python 2.7)
$ pip2
Traceback (most recent call last):
File "/usr/bin/pip2", line 9, in <module>
from pip import main
ImportError: cannot import name main
๋ด ์์คํ ์ ๋ณด:
$ uname -a
Linux devops-kubernetes-master 4.13.0-38-generic #43-Ubuntu SMP Wed Mar 14 15:20:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=17.10
DISTRIB_CODENAME=artful
DISTRIB_DESCRIPTION="Ubuntu 17.10"
NAME="Ubuntu"
VERSION="17.10 (Artful Aardvark)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 17.10"
VERSION_ID="17.10"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=artful
UBUNTU_CODENAME=artful
$ python --version
Python 2.7.14
$ apt list --installed | grep python-
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libpython-all-dev/artful,now 2.7.14-2ubuntu1 amd64 [installed]
libpython-dev/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
libpython-stdlib/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
python-all/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
python-all-dev/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
python-apt-common/artful,artful,now 1.4.0~beta3build2 all [installed]
python-asn1crypto/artful,artful,now 0.22.0-1 all [installed,automatic]
python-cffi-backend/artful,now 1.9.1-2build2 amd64 [installed,automatic]
python-crypto/artful-updates,artful-security,now 2.6.1-7ubuntu0.1 amd64 [installed,automatic]
python-cryptography/artful,now 1.9-1 amd64 [installed,automatic]
python-dbus/artful,now 1.2.4-1build3 amd64 [installed,automatic]
python-dev/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
python-enum34/artful,artful,now 1.1.6-1 all [installed,automatic]
python-gi/artful,now 3.24.1-2build1 amd64 [installed,automatic]
python-idna/artful,artful,now 2.5-1 all [installed,automatic]
python-ipaddress/artful,artful,now 1.0.17-1 all [installed,automatic]
python-keyring/artful,artful,now 10.4.0-1 all [installed,automatic]
python-keyrings.alt/artful,artful,now 2.2-2 all [installed,automatic]
python-minimal/artful,now 2.7.14-2ubuntu1 amd64 [installed,automatic]
python-pip/artful,artful,now 9.0.1-2 all [installed]
python-pip-whl/artful,artful,now 9.0.1-2 all [installed,automatic]
python-pkg-resources/artful,artful,now 36.2.7-2 all [installed,automatic]
python-secretstorage/artful,artful,now 2.3.1-2 all [installed,automatic]
python-setuptools/artful,artful,now 36.2.7-2 all [installed,automatic]
python-setuptools-doc/artful,artful,now 36.2.7-2 all [installed]
python-six/artful,artful,now 1.10.0-4 all [installed,automatic]
python-talloc/artful,now 2.1.9-2ubuntu1 amd64 [installed]
python-wheel/artful,artful,now 0.29.0-2 all [installed,automatic]
python-xdg/artful,artful,now 0.25-4 all [installed,automatic]
๋๋ ์ด๋ ๊ฒ ๊ณ ์ณค๋ค.
$ ํ --๋ฒ์
์ญ์ถ์ (๊ฐ์ฅ ์ต๊ทผ ํธ์ถ ๋ง์ง๋ง):
ํ์ผ "/usr/bin/pip", 9ํ,
ํ ๊ฐ์ ธ์ค๊ธฐ ๋ฉ์ธ์์
ImportError: main ์ด๋ฆ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
$ sudo apt-get python-pip ์ ๊ฑฐ
$ sudo apt-get ์ค์น python-pip
$ ํ --๋ฒ์
/home/user/.local/lib/python2.7/site-packages/pip(ํ์ด์ฌ 2.7)์ pip 10.0.0
๋๋ ๊ทธ๊ฒ์ด ๋๊ตฐ๊ฐ๋ฅผ ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๋ชจ๋ ๊ฒ์ ๋ฐ๋ผ ํ ํ์๋ pip๋ฅผ ๋ค์ด ๊ทธ๋ ์ด๋ ํ ์ ์์ต๋๋ค. ๊ณ์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
$ sudo apt-get python-pip ์ ๊ฑฐ
$ ํ -v
bash: /usr/bin/pip: ํด๋น ํ์ผ์ด๋ ๋๋ ํ ๋ฆฌ๊ฐ ์์ต๋๋ค.
ํ์ง๋ง ๋ด๊ฐ ์ด๊ฒ์ ์๋ํ ๋$ ํ์ด์ฌ -m ํ -V/home/user/.local/lib/python2.7/site-packages/pip(ํ์ด์ฌ 2.7)์ pip 10.0.0
๊ทธ๋์ pip์ ์ ์ฒด ํด๋๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
$ sudo rm -r /home/user/.local/lib/python2.7/site-packages/pip*
๊ทธ๋ฐ ๋ค์ ๋ค์ ๋๋ ์ด๊ฒ์ ์๋ํฉ๋๋ค.
$ ํ์ด์ฌ -m ํ -V
/usr/bin/pip: pip๋ผ๋ ๋ชจ๋์ด ์์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ pip๋ฅผ ๋ค์ ์ค์นํ์ญ์์ค.
$ sudo apt ์ค์น python-pip
$ ํ์ด์ฌ -m ํ -V
usr/lib/python2.7/dist-packages์ pip 8.1.1(ํ์ด์ฌ 2.7)
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
3์๊ฐ์ ํ๋นํ ํ ์ด๊ฒ์ด ๋ด๊ฐ ์ป์ ๊ฒ์ ๋๋ค.
pip 10.0.0์ ์ ๊ฑฐํ๋ ค๋ฉด:
sudo apt-get python-pip ์ ๊ฑฐ
๊ทธ๋ฌ๋ ์ง์ ๋ฐฉ๋ฒ์ผ๋ก ํ์ํ ์ฌ๋ฐ๋ฅธ ๋ฒ์ ์ pip๋ฅผ ์ค์นํ ์ ์์ต๋๋ค.
์ค์น ํ ์๋ ค์ง ์๋ ๋ฒ์ ์ผ๋ก ๋ค์ด๊ทธ๋ ์ด๋ํ๋ ค๋ฉด
pip10์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ ๋: ImportError: ์ด๋ฆ์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
๋ค์์ ์คํํด์ผ ํฉ๋๋ค.
ํ์ด์ฌ -m pip ์ค์น pip==KNOW_WORKING_VERSION>
PIP10์ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ์ค์นํ๋ ค๋ฉด:
sudo python -m pip install PACKAGE_NAME
์ด๊ฒ์ ํจ๊ณผ๊ฐ ์์๋ค.
๊ฑด๋ฐฐ :)
๋์ผํ ๋ฌธ์ , ๋ฌธ์ ์์ : ์ ์ฒด ์ฌ์ค์น: python-pip
์ฌ๊ธฐ์ ์ธ๊ธ ๋๋๋ก ์์ ๋ค์ ๋ก๊ทธ์ธํ์ญ์์ค.
https://github.com/pypa/pip/issues/5240#issuecomment -382262586
pip3 install --upgrade pip==9.0.3
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
ImportError: cannot import name 'main'
ํ... ๋ด๊ฐ ๋ญ ๋นผ๊ณ ...
๋ฐฉ๊ธ pip ์ค์น๋ฅผ ํ์์ต๋๋ค.
python -m pip install --user --upgrade pip==9.0.3
์ด ๋ฌธ์ ๋ CI์ฉ AppVeyor๋ฅผ ์ฌ์ฉํ ๋ Windows ๋น๋์์๋ ๋ฐ์ํ๋ค๊ณ ๋ณด๊ณ ํ๊ณ ์ถ์์ต๋๋ค.
๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Running Install scripts
SET PATH=%PYTHON%;%PYTHON%\Scripts;%PATH%
pip install --disable-pip-version-check --user --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl (1.3MB)
Installing collected packages: pip
Successfully installed pip-10.0.1
pip install -U setuptools
Traceback (most recent call last):
File "c:\python27-x64\lib\runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "c:\python27-x64\lib\runpy.py", line 72, in _run_code
exec code in run_globals
File "C:\Python27-x64\Scripts\pip.exe\__main__.py", line 5, in <module>
ImportError: cannot import name main
Command exited with code 1
์ด ์ํ์ ๊ถ์ฅ ์ฌํญ์ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฌ appveyor.yml
์คํฌ๋ฆฝํธ์ pip install --disable-pip-version-check --user --upgrade pip
๊ฐ ์์ต๋๋ค. https://github.com/ogrisel/python-appveyor-demo/blob/master/appveyor.yml #L111
์ด๊ฒ์ pip 10.x๊น์ง ์ ์๋ํ์ผ๋ฉฐ ๋ค๋ฅธ ์ฌ๋๋ค์ด ์ด๊ฒ์ ๊ธฐ๋ฐ์ผ๋ก appveyor.yml
๋ฅผ ๋ง๋ ๊ฒฝ์ฐ์๋ ์ด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๊ฒ์
๋๋ค.
easy_install -U pip
๋ก ์ ํํ๋ฉด ํจ๊ณผ๊ฐ ์์์ง๋ง ๊ทธ ์ ์ ์๋ํ๋ ์ฌ๋ฌ ์ ์ฅ์๊ฐ ์์ต๋๋ค. ์ด์ pip 10.x์์ ์๋ํ๋๋ก ์
๋ฐ์ดํธํด์ผ ํฉ๋๋ค.
CI ์ค์ ์ ๊ถ์ฅ๋๋ ์ ๊ทผ ๋ฐฉ์์ 9.0.3์ ๊ณ ์ํ๊ฑฐ๋ easy_install์ ์ฌ์ฉํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
CI ์ค์ ์ ๊ถ์ฅ๋๋ ์ ๊ทผ ๋ฐฉ์์ 9.0.3์ ๊ณ ์ํ๊ฑฐ๋ easy_install์ ์ฌ์ฉํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ถ์ฅ๋๋ ์ ๊ทผ ๋ฐฉ์์ pip์ ๋ด๋ถ ๊ตฌํ ์ธ๋ถ ์ ๋ณด์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ/์์ฉ ํ๋ก๊ทธ๋จ/๋๊ตฌ์ ์ข ์์ฑ์ ์ ๊ฑฐํ๋ ๊ฒ์ ๋๋ค. easy_install์ ๋ ์ด์ AFAIK๋ฅผ ์ ๊ทน์ ์ผ๋ก ๊ฐ์ ํ์ง ์์ผ๋ฉฐ pip๊ฐ ์ํํ๋ ๋ง์ ์์ ์ ์ง์ํ์ง ์์ ์ ์์ต๋๋ค.
ํน์ ๋ฌธ์ ์ ๊ฒฝ์ฐ python -m pip install --force-reinstall pip
๋ฅผ ์คํํ์ฌ ์์๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ ํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ ๋ฌธ์ ๋ฅผ ์ ์ถํ์ญ์์ค.
๊ถ์ฅ๋๋ ์ ๊ทผ ๋ฐฉ์์ pip์ ๋ด๋ถ ๊ตฌํ ์ธ๋ถ ์ ๋ณด์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ/์์ฉ ํ๋ก๊ทธ๋จ/๋๊ตฌ์ ์ข ์์ฑ์ ์ ๊ฑฐํ๋ ๊ฒ์ ๋๋ค. easy_install์ ๋ ์ด์ AFAIK๋ฅผ ์ ๊ทน์ ์ผ๋ก ๊ฐ์ ํ์ง ์์ผ๋ฉฐ pip๊ฐ ์ํํ๋ ๋ง์ ์์ ์ ์ง์ํ์ง ์์ ์ ์์ต๋๋ค.
๋๋ ๋น์ ์ด ๊ทธ์ ํฌ์คํธ์ ๋๋จธ์ง ๋ถ๋ถ์ ์ฝ์ง ์์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ pip ๋์ easy_install์ ์ฌ์ฉํ์ฌ pip๋ฅผ ์ค์นํ๋ ๊ฒ์ ์ธ๊ธํ์ต๋๋ค.
easy_install๋ก ์ ํ -U pip๊ฐ ์๋ํ์ต๋๋ค...
๋ํ ๊ทธ๋ pip์ ๋ด๋ถ ๊ตฌํ ์ธ๋ถ ์ ๋ณด์ ์์กดํ์ง ์์ต๋๋ค. ๊ทธ๋ AppVeyor์ ์๋ก์ด ์คํ์ ์ ์ฌ์ฉํ๊ณ ๊ทธ๊ฐ ์ง์ ํ ๋ช ๋ น์ ์ฌ์ฉํ์ฌ pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๊ณ ์์ต๋๋ค.
pip install --disable-pip-version-check --user --upgrade pip
์ด ์ค๋ ๋์ ๋ค๋ฅธ ๋ง์ ์ฌ๋๋ค์ด ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ต๋๋ค. ํน๋ณํ ์์ ์ ํ์ง ์๊ฑฐ๋ pip์ ๋ด๋ถ์ ์์กดํ์ง ์๊ณ pip์ ๊ธฐ๋ณธ ์ค์น๋ก ์ด๊ฒ์ ์ฌํํ ์ ์์ต๋๋ค. ์ด๊ฒ์ ์์ ๊ฒ์๋ฌผ์์ ๋ง์ ์ฌ๋๋ค์ ์ํด ๋ฌธ์ํ๋์์ต๋๋ค.
@ikreymer ๋ง์ํ์ ๋ฌธ์ ๋ Windows๋ฅผ ์คํํ๋ Appveyor์ ์์ต๋๋ค. ์ฌ๊ธฐ์์ ๋
ผ์๋๋ ๋ฌธ์ ๋ ๋
์ ์ ์ธ Unix ์ ํธ๋ฆฌํฐ์ธ pyenv
์ ๊ด๋ จ๋์ด ์์ต๋๋ค.
@pradyunsg ์ ๋ํด ์ ๋ชจ๋ฅด์ง๋ง ๋ ผ์๋๊ณ ์๋ ๋ค์ํ ๋ฌธ์ ๊ฐ ๋ฌด์์ธ์ง ์ ์ ํผ๋์ค๋ฌ์์ง๊ณ ์์ต๋๋ค. ๊ทผ๋ณธ ์์ธ์ ๊ฐ๋จํฉ๋๋ค. pip๊ฐ (์๋์ ์ผ๋ก) ๋ด๋ถ API๋ฅผ ์ด๋ํ์ผ๋ฉฐ, ์ด๋ ์ง์ ๋๋ ๊ฐ์ ์ ์ผ๋ก ์ด๋ฅผ ์ฌ์ฉํ๋ ๋๊ตฌ์ ์์กดํ๋ ์ฌ๋๋ค์๊ฒ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๊ณ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ ๋ฐ๋ ์ผ์ด ์๋๋๋ค. ๋ฐ๋ผ์ ์ฌ์ฉ์๊ฐ ํน์ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฐพ๋๋ก ์ง์ํ๋ ค๋ฉด ํ ๋ฒ์ ํ๋์ ๋ฌธ์ ์ ์ง์ค์ ์ผ๋ก ํ ๋ก ํด์ผ ํฉ๋๋ค.
๊ทธ๋์ ์ ๊ฐ ๋ฌผ์ด๋ด๋ ๋ ๊น์? Appveyor์ ๋ฌธ์ ์ ๋ํ ๋์์ด ํ์ํ ๊ฒฝ์ฐ ๋ฌธ์ ๋ฅผ ์ค๋ช ํ๋ ์ ๋ฌธ์ ๋ฅผ ์ด์ด ์ฃผ์๋ฉด ํ ๋ก ์ ๊ทธ๊ณณ์ผ๋ก ์ฎ๊ธฐ๊ฒ ์ต๋๋ค. (๋๋ถ๋ถ์ ์ธ๋ถ ์ฌํญ์ ๊ทํ์ ์๊ฒฌ์ ์์ ์ ์์ผ๋ฏ๋ก ๋ฌธ์ ์ ์์์ ์ด ๋ ๊ฒ์ด์ง๋ง ์๋ก์ด Appveyor ํ๋ก์ ํธ์์ ๋ฌธ์ ๋ฅผ ์ฌํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ ํ ์ค๋ช ์ ๋ฌธ์ ์ง๋จ์ ๋๋ ๋ฐ ๋งค์ฐ ์ ์ฉํฉ๋๋ค. .
@arvoelke :
๊ทธ๋ pip ๋์ easy_install์ ์ฌ์ฉํ์ฌ pip๋ฅผ ์ค์นํ๋ ๊ฒ์ ์ธ๊ธํ์ต๋๋ค.
easy_install
๋ฅผ ์ฌ์ฉํ์ฌ pip๋ฅผ ์ค์นํ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ผ๋ฉฐ, ๋ฌธ์ ๊ฐ ์๋ ๊ฒฝ์ฐ ( @pradyunsg ๊ฐ ๋งํ๋ฏ์ด) easy_install
๊ฐ ์ค๋๋๊ณ ์ ๊ทน์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋์ง ์๊ธฐ ๋๋ฌธ์ ์ง์ํ์ง ์์ต๋๋ค. ์ต๊ทผ ๊ธฐ๋ฅ์ด ๋๋ฝ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๊ฒ์ด ๋น์ ์๊ฒ ํจ๊ณผ๊ฐ ์๊ณ ์ฐ๋ฆฌ์ ๋์์ด ํ์ํ์ง ์๋ค๋ฉด ๊ด์ฐฎ์ต๋๋ค. ์๋ฌด๋ ๋น์ ์ ๋ง์ ์ ์์ต๋๋ค.
์ด ์ค๋ ๋์ ๋ค๋ฅธ ๋ง์ ์ฌ๋๋ค์ด ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์์ต๋๋ค.
"๋์ผ"์ ์ ์ํ์ญ์์ค. " pip.main
๋ฅผ ๊ฐ์ ธ์ค๋ ์ฝ๋์์ ์ค๋ฅ๊ฐ ํ์๋จ"์ ์๋ฏธํ๋ค๋ฉด ์, ํ์ง๋ง pip์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค. ์ด๋ ์๋์ ์ด๊ณ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ pip์ ๋ด๋ถ ๊ตฌํ์ผ๋ก ๋ณ๊ฒฝํ ๊ฒ์
๋๋ค. ํ๋ , ๋น์ ์ pip์ ๋ด๋ถ API๋ฅผ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค." ๊ทธ๋ฌ๋ฉด ๊ด์ฐฎ์ต๋๋ค. ๋จ์ผ ๋ฌธ์ ๋ก ์ถฉ๋ถํ๋ฉฐ "๋ฒ๊ทธ๊ฐ ์๋"์ผ๋ก ์ข
๋ฃํ๊ฒ ์ต๋๋ค. ํ์ง๋ง ๋ฌธ์ ํด๊ฒฐ์ ๋์์ด ๋์์ผ๋ฉด ํ๊ฒฝ์ ์ผ๋ถ๊ฐ 6๊ฐ์ ์ ์ ๊ฒ์๋ ์กฐ์ธ์ ๋ฐ๋ฅด์ง ์๊ณ ๊ณต๊ธ์
์ฒด์์ ํ๊ฒฝ์ ์์ ํ๋ ๋์ pip๋ฅผ ๊ณ์ ์ฌ์ฉํ ์ ์๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฐพ์ ๋ค์ ์ฐ๋ฆฌ๋ฅผ ๋์์ผ ํฉ๋๋ค. Windows์์ ์คํํ ๋ ์์ํ Unix ์ ํธ๋ฆฌํฐ์ ๋ํ ๋ณด๊ณ ์์์ "๋๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค"๋ผ๊ณ ๋งํ๋ ๊ฒ์ ํ์คํ ์ฐ๋ฆฌ๊ฐ ๋น์ ์ ๋๋ ๋ฐ ๋์์ด ๋์ง ์์ต๋๋ค ...
์ฌ๊ธฐ์์ ๋ ผ์๋๋ ๋ฌธ์ ๋ ๋ ์ ์ ์ธ Unix ์ ํธ๋ฆฌํฐ์ธ pyenv์ ๊ด๋ จ์ด ์์ต๋๋ค.
์ด ์ค๋ ๋์ ๋ํ ์ฒซ ๋ฒ์งธ ๋ต๋ณ ์ค ํ๋๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ฌ๊ธฐ๋ ๊ฐ์ .. @HayaoSuzuki ์ ๋์ผํ ์ถ๋ ฅ์ด๋ฉฐ pyenv๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค.
pyenv ์ธก๋ฉด์ Ubuntu ๋ฐ RaspberryPi๋ฅผ ์๋ก ์ค์นํ ๋ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ํฌํจํ์ฌ ์์ ์๊ฒฌ๊ณผ ์ฐ๊ฒฐ๋ ๋ฌธ์ ๋ฐ ์ปค๋ฐ์ ๊ธฐ๋ฐ์ผ๋ก ๋ค์ ๋ถ์ฐจ์ ์ธ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. ๋ค์ ๋งํ์ง๋ง ์ด ๋ชจ๋ ๊ฒ์ ์ด๋ฏธ ์ด ๋ฌธ์ ์ ์ผ๋ถ์ ๋๋ค. ๊ทผ๋ณธ ์์ธ์ OP๋ฅผ ํฌํจํ ๋ชจ๋ ์ฌ๋์ ๋ํด "๋์ผํ"(์ฆ, pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ ๋ค์ ์์ํ๋ ค๊ณ ์๋ํ๋ ๊ฒ) ๋ ๋ง์ ๋ฌธ์ ๋ฅผ ์์ฑํ ์ ์์ง๋ง ์ค์ ๋ก๋ ๊ทธ๋ค ์ฌ์ด์ ์๋ฌด๋ฐ ์ฐจ์ด๊ฐ ์์ต๋๋ค. ๋ฌธ์ ๊ฐ ๋ํ๋๋ ๋ฐฉ์.
Windows์์ ์คํํ ๋ ์์ํ Unix ์ ํธ๋ฆฌํฐ์ ๋ํ ๋ณด๊ณ ์์์ "๋๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค"๋ผ๊ณ ๋งํ๋ ๊ฒ์ ํ์คํ ์ฐ๋ฆฌ๊ฐ ๋น์ ์ ๋๋ ๋ฐ ๋์์ด ๋์ง ์์ต๋๋ค...
Windows์์ ์คํ๋์ง ์์ต๋๋ค. ์ ์ ๋งํ๋ฏ์ด ์ฐ๋ถํฌ์์ ์คํ ์ค์ ๋๋ค. ๋ค๋ฅธ ํฌ์คํฐ๋ Windows๋ฅผ ์ฌ์ฉํ๊ณ ์์ง๋ง ์ด ๋ฌธ์ ์ ๋๋จธ์ง ์ฌ๋๋ค์ฒ๋ผ ๋จ์ํ pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๊ณ pip๋ฅผ ์คํํ๊ณ ์์ต๋๋ค. pyenv๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฌธ์ ์ ๊ทผ๋ณธ์ด ์๋๋ผ๋ ๋ฐ์๋ ๊ฝค ์ผ๋ฐ์ ์ธ ํฉ์๊ฐ ์์ต๋๋ค.
์ด๋ฌํ ๋ชจ๋ ๋ฌธ์ ๋ pip๋ฅผ ์
๊ทธ๋ ์ด๋ํ์ง๋ง ์ฌ์ ํ ์ด์ ์ง์
์ ์ ์ฌ์ฉํ๋ ์ด์ ๋ฐ์ฒ๋ฅผ ๊ณ์ ์ฌ์ฉํ๋ ๋์ผํ ๋ฌธ์ ์์ ๋น๋กฏ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด๋ฐ ์ข
๋ฅ์ ๋ฌธ์ ๋ฅผ ํผํ๋ ์ข์ ๋ฐฉ๋ฒ์ python -m pip
๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์
๋๋ค.
์ด๋ฌํ ๋ชจ๋ ๋ฌธ์ ๋ pip๋ฅผ ์ ๊ทธ๋ ์ด๋ํ์ง๋ง ์ฌ์ ํ ์ด์ ์ง์ ์ ์ ์ฌ์ฉํ๋ ์ด์ ๋ฐ์ฒ๋ฅผ ๊ณ์ ์ฌ์ฉํ๋ ๋์ผํ ๋ฌธ์ ์์ ๋น๋กฏ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ด๋ฐ ์ข ๋ฅ์ ๋ฌธ์ ๋ฅผ ํผํ๋ ์ข์ ๋ฐฉ๋ฒ์ python -m pip๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
๋ค, ์ด๊ฒ์ด ๋ฌธ์ ์ ๊ทผ๋ณธ์ธ ๊ฒ ๊ฐ์ผ๋ฉฐ Windows๋ฅผ ํฌํจํ์ฌ ์ด ์ค๋ ๋์์ ์ธ๊ธ๋ ๋ชจ๋ ๋ค๋ฅธ ํ๋ซํผ์์ ๋ฐ์ํฉ๋๋ค.
์ด๊ฒ์ด ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋์์ด ๋๋ ๊ฒฝ์ฐ ๋ค์์์ appveyor.yml
pip ์
๊ทธ๋ ์ด๋ ์ ํ์ ํ์ธํ ์ ์์ต๋๋ค.
pip install --disable-pip-version-check --user --upgrade pip
์๊ฒ:
python -m pip install --upgrade pip
๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์ด์ ๋ ๋ง์ ์ ์ฅ์๋ฅผ ์ ๋ฐ์ดํธํ์ญ์์ค!
๋ค๋ฅธ ์ํฉ์์ ์ฌ๊ธฐ์์ ๋ ผ์๋ ๋์ผํ ์ฆ์์ด ๋ฐ์ํ์ต๋๋ค.
Ubuntu 16.0.4 ์์คํ ์์ ๋ก์ปฌ๋ก ์ค์น๋ pip๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ์ต๋๋ค.
curl -O https://bootstrap.pypa.io/get-pip.py
export PYTHONUSERBASE=$(pwd)
python ./get-pip.py --user
export PYTHONPATH=$(pwd)/lib/python2.7/site-packages
python ./bin/pip --version
Traceback (most recent call last):
File "/path/to/bin/pip", line 7, in <module>
from pip._internal import main
ImportError: No module named _internal
Ubuntu๋ site.py
sys.path
์ pip ํน์ ๊ฒฝ๋ก๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ด๋ ์๋ ํ์๋ ๋ด PYTHONPATH
๋ฅผ ์ฌ์ ์ํ์ต๋๋ค.
import sys
print(sys.path)
['', '/usr/local/lib/python2.7/dist-packages/pip-9.0.1-py2.7.egg', '/path/to/lib/python2.7/site-packages`, ...]
man ํ์ด์ง์ ๋ค์๊ณผ ๊ฐ์ด ๋ฌธ์ํ๋์ด ์๋ python์ ๋ํด -S
ํ๋๊ทธ๋ฅผ ์์ ๋ถ์ด์ง ์๋๋ก ํ์ต๋๋ค.
-S
๋ชจ๋ ์ฌ์ดํธ ๊ฐ์ ธ์ค๊ธฐ ๋ฐ ์ด์ ์๋ฐ๋๋ sys.path์ ์ฌ์ดํธ ์ข ์ ์กฐ์์ ๋นํ์ฑํํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ํจ๊ณผ๊ฐ ์์๋ค:
python -S ./bin/pip --version
pip 10.0.1 from path/to/bin/pip (python 2.7)
์ด๊ฒ์ด ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ๋์์ด ๋ ์ ์๋ ๊ฒฝ์ฐ ๊ณต์ - ๋ด ๋์ปค ์ด๋ฏธ์ง (๊ธฐ๋ณธ์ ubuntu:xenial
)์์ ๋ค์ ์ค๋ฅ๋ฅผ ์์ ํ์ต๋๋ค.
Step 8/12 : RUN pip install -U pip && pip install -r /tmp/requirements.txt
---> Running in e4ff51b013f0
Collecting pip
Downloading https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl (1.3MB)
Installing collected packages: pip
Found existing installation: pip 8.1.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-10.0.1
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main
pip install -U pip && pip install -r /tmp/requirements.txt
์ pip2 install -U pip && pip2 install -r /tmp/requirements.txt
๋ก ๋ณ๊ฒฝํ์ต๋๋ค. ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
@davidjlloyd ์ ๋๊ธ์ ๋ํ ๋ต๋ณ/์๋ต์ ๋ณด์๋์ง ํ์คํ์ง ์์ต๋๋ค.
๋ช ๊ฐ์ง ์ฃผ์ ๋ฆด๋ฆฌ์ค์ ๋ํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง ์๋ ๋์ ์ง์๋์ง ์๋ ๊ธฐ๋ฅ์ ๊ธฐ์กด ์ฌ์ฉ์ ์ ๊ทน์ ์ผ๋ก ์ค๋จํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์ธ์ง ํ์ ํ ์ ์์ต๋๋ค.
์ด์ ๋ํ ์ฌ์ฉ ์ค๋จ ์ ์ฐจ๊ฐ ์๋ ์ด์ ๋ฅผ ์ฌ์ญค๋ด๋ ๋ ๊น์?
pip ์ import
์์ pip
sys.argv[0]
#$ ๋ฅผ ํ์ธํ๋ ๊ฒ์ด ๋งค์ฐ ์ฌ์ ์ ๊ฒ ๊ฐ์ต๋๋ค. pip
๋๋ pipX[.Y]
๊ฐ ์๋ ๊ฒฝ์ฐ ์ธ๊ธํ https://pip.pypa ์ ๋ํ ๋งํฌ์ ํจ๊ป ๋ฆด๋ฆฌ์ค X+์์ ์คํจํ DeprecationWarning
์ผ๋ถ๋ฅผ ๋ด๋ณด๋
๋๋ค. io/en/latest/user_guide/#using -pip-from-your-program
์์ผ๋ก ์ด๋ฐ ์ข ๋ฅ์ ์ผ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๊ณ ๋ณด์ฅํ๋ ํ๋ก์ธ์ค๊ฐ ์์ต๋๊น?
@davidjlloyd ์ ๋๊ธ์ ๋ํ ๋ต๋ณ/์๋ต์ ๋ณด์๋์ง ํ์คํ์ง ์์ต๋๋ค.
๋ฐ๋ณต์ ์ผ๋ก ๋ต๋ณ๋์์ต๋๋ค. ์๋ง๋ ์ด ํน์ ๋ฌธ์ ๊ฐ ์๋ ์๋ ์์ง๋ง ๋ฌธ์ ์ถ์ ๊ธฐ๋ฅผ ๊ฒ์ํ๋ฉด ํด๋น ๋ฌธ์ ์ ๋ํ ๋ง์ ํ ๋ก ์ ์ฐพ์ ์ ์์ต๋๋ค.
์ด์ ๋ํ ์ฌ์ฉ ์ค๋จ ์ ์ฐจ๊ฐ ์๋ ์ด์ ๋ฅผ ์ฌ์ญค๋ด๋ ๋ ๊น์?
์ง์ํ ์ ์ด ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฐ๋ฆฌ๊ฐ ๊ฒฐ์ฝ ์ง์งํ์ง ์์ ๊ฒ์ ์ง์งํ์ง ์๋๋ค๊ณ ๊ฒฝ๊ณ ํ๋ ์ด์ ๋ ๋ฌด์์ ๋๊น? ์ฌ๋๋ค์ pip์ ์์ค ์ฝ๋๋ฅผ ์ฝ๊ณ ๊ฑฐ๊ธฐ์ ์๋ ๊ธฐ๋ฅ์ ์์ฒด ์ฝ๋์์ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ด์ฐฎ๋ค๊ณ ์๊ฐ ํ์ต๋๋ค. ๊ทธ๊ฒ์ ๊ฒฐ์ฝ ์๋์๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ด ๊นจ์ง ์ ์๋ค๊ณ ๋งํ๊ณ pip 10์์ ๊นจ์ก์ต๋๋ค.
pip๋ฅผ ๊ฐ์ ธ์ฌ ๋ sys.argv[0]์ ํ์ธํ๋ ๊ฒ์ด ๋งค์ฐ ์ฌ์ ์ ๊ฒ ๊ฐ์ต๋๋ค. pip ๋๋ pipX[.Y]๊ฐ ์๋๋ฉด DeprecationWarnings๋ฅผ ๋ด๋ณด๋ ๋๋ค.
์๊ฐ๋งํผ ์ฌ์ด์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋๋ pip 10์ ์ถ๊ฐ๋ ๊ฒฝ๊ณ ๊ฐ ์ฐ๋ฆฌ๊ฐ ์์ํ์ง ๋ชปํ์ ๋ ์ด๋ฐ๋๋ ๋ฌธ์ ๋ฅผ ์ฒ๋ฆฌํด์ผ ํ๋ ์ฌ๋์ ๊ด์ ์์ ๋งํฉ๋๋ค...
๊ทธ๋ฆฌ๊ณ ๋ค์, ์ฒ์๋ถํฐ ์ง์๋์ง ์๋ ๊ฒ์ ๋ ์ด์ ์ฌ์ฉํ์ง ์์ ํ์๊ฐ ์์ต๋๋ค.
์์ผ๋ก ์ด๋ฐ ์ข ๋ฅ์ ์ผ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๊ณ ๋ณด์ฅํ๋ ํ๋ก์ธ์ค๊ฐ ์์ต๋๊น?
๋ฌด์จ ์ผ์ด์ผ? ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๋ณด์ฅํ์ง ์๋ ๋ณ๊ฒฝ ์ฌํญ์ผ๋ก ์ธํ ์์? ์๋์. ์ฐ๋ฆฌ๊ฐ ๊ทธ๊ฒ์ ํผํ ํ์๋ ์์ต๋๋ค. ์ฌ์ค, ์ฐ๋ฆฌ๋ ์ฌ์ฉ์์ ๋ํ ์์๋ก ํ๋ก์ธ์ค๋ฅผ ๊ด๋ฆฌํ๋ ค๊ณ ๋ ธ๋ ฅํฉ๋๋ค(์๋ฌด๊ฐ ์๋๋๋ค !). ์ด ๊ฒฝ์ฐ ์ฐ๋ฆฌ๋ 6๊ฐ์ ์ ์ ๋ณ๊ฒฝ ์ฌํญ์ ๊ณต๊ฐํ๊ณ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํด์ผ ํ๋ ์ฌ๋๋ค์๊ฒ ์ ์์ ์ ๊ณตํ์ผ๋ฉฐ ๋ฆด๋ฆฌ์ค ์ดํ๋ก ๋ง์ ์๊ฐ์ ์ฌ์ฉํ์ฌ ์์กดํ๋ ์ํํธ์จ์ด๊ฐ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด์ง ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ฌ์ฉ์๋ฅผ ๋์์ต๋๋ค. ๊ทธ ๊ฒฝ๊ณ . ๊ทธ๊ฒ์ ์์ฃผ ์์ ์์ ๋ด์ฌ์ ๊ทธ๋ฃน์ด ์ ๊ณต๋๊ฑฐ๋ ์ฝ์๋ ์ ์ด ์๋ ์ง์์ ๊ธฐ๋ํ๋ ์ฌ๋๋ค๋ก ์ธํด ๋ฐ์ํ๋ ์ํฉ์ ์ํํ๊ธฐ ์ํด ํฌ์ ํ ๋ง์ ์์ ์ ๋๋ค. ์ฒ๋ง์์.
ํธํ์ฑ์ ๋ณด์ฅ ํ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ํ ํ๋ก์ธ์ค(์ฌ์ฉ ์ค๋จ ๊ฒฝ๊ณ ๋ฑ)๊ฐ ์์ต๋๋ค. ํ์ง๋ง pip๋ฅผ ์์ ์ ํ๋ก๊ทธ๋จ์ผ๋ก ๊ฐ์ ธ์ค๋ ๊ฒ์ ๊ทธ ์ค ํ๋๊ฐ ์๋๋๋ค.
๋๋ flask๋ฅผ ์ค์นํ๊ณ ์ ๊ทธ๋ ์ด๋๋ฅผ ์์ฒญํ๋ bash ์คํฌ๋ฆฝํธ๊ฐ ๋ด ์คํฌ๋ฆฝํธ๋ฅผ ์ค๋จ์์ผฐ์ง๋ง ์์ ์ธ๊ธ๋ ์ด์ ๋ฅผ ์ดํดํฉ๋๋ค. ๋ด ์คํฌ๋ฆฝํธ๊ฐ ๊ณ์ ์๋ํ๋๋ก ํ๋ ๋ฐฉ๋ฒ์ ๋จ์ํ ์๋ก์ด bash ํ๋ก์ธ์ค๋ฅผ ์์ํ๋ ๊ฒ์ด์์ต๋๋ค. ์๋ง๋ ๊ทธ๊ฒ์ ํ๋ฆด ์ ์์ง๋ง ์ ์๊ฒ๋ ํจ๊ณผ๊ฐ ์์์ต๋๋ค. ๋น์ทํ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ๋์์ด ๋๊ธธ ๋ฐ๋๋๋ค.
pip install --upgrade pip
echo "pip install Flask" | bash
echo "pip install requests" | bash
@OneLogicalMyth ๋น์ ์ด ์ฐพ๊ณ ์๋ ๊ฒ์ hash -d pip
์ผ ์ ์์ต๋๋ค. https://github.com/pypa/pip/issues/5221#issuecomment -381568428์ ์ฐธ์กฐํ์ญ์์ค.
์ฃผ์ ๊น๊ฒ ์ฝ์ ํ์๋ ์์ ํ ๋์ณค์ต๋๋ค. @austinbutler ๋๋ถ ์ ์ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
์ด ๋ฌธ์ ๊ฐ ์ด๋ฆฐ ์ํ๋ก ์ ์ง๋๊ณ ๋ณต์ ๋ณธ์ผ๋ก ์ฆ์ ๋ซํ์ง ์์ ์ ์ผํ ์ด์ ๋ pyenv๊ฐ shim์ผ๋ก ์์ ์ ์ํํ๊ณ pip๊ฐ ์ด๋ค ์์ผ๋ก๋ ๋์์ด ํ์ํ์ง ๊ฑฑ์ ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ ์ง ์์์ผ๋ฏ๋ก ์ด ๋ฌธ์ ๋ ์ด์ ์ข ๋ฃ๋์์ต๋๋ค.
์ฌ๊ธฐ์ ์ธ๊ธ๋ ๊ฑฐ์ ๋ชจ๋ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ด์ ์ ๋์ด ํ์ต๋๋ค. ์ด ๋ฌธ์ ์์ ์ ๊ธฐ๋ ๋ชจ๋ ์ฐ๋ ค ์ฌํญ์ด ํด๊ฒฐ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ ๋ฌธ์ ๋ฅผ ์ฌ์ญ์์ค.
@benoit-pierre ๋งํฌ๋ ๋๊ธ์ python -m pip
์ฌ์ฉ ์ ์์ ์ถ๊ฐํ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค. :)
easy_install์ ์ฌ์ฉํ์ฌ pip๋ฅผ ์ค์นํ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ผ๋ฉฐ, ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ( @pradyunsg ๊ฐ ๋งํ๋ฏ์ด) easy_install์ด ์ค๋๋๊ณ ์ ๊ทน์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋์ง ์๊ณ ์ต์ ๊ธฐ๋ฅ์ด ์๊ธฐ ๋๋ฌธ์ ์ง์ํด ๋๋ฆด ์ ์์ต๋๋ค.
@pfmoore์ ์ ์ฅ์ ๋ช ํํ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ๊ทธ๊ฒ ๋ด๊ฐ ๋งํ๋ ๊ฒ์ ๋๋ค.
๋ ผ์๋๊ณ ์๋ ๋ค์ํ ๋ฌธ์ ๋ค์ด ๋ฌด์์ธ์ง ์ ์ ํผ๋์ค๋ฌ์์ง๊ณ ์์ต๋๋ค.
๋๋.
์ด๋ฒ ํธ์์ ๋ณธ ๊ฒ๋ค์ ๋ํ ๋ช ๊ฐ์ง ์ผ๋ฐ์ ์ธ ํ(์ฌ์ฉํ๊ฑฐ๋ ๊ทธ๋๋ก ๋์ญ์์ค):
pip
๋ช
๋ น์ด ์๋ํ์ง ์์ผ๋ฉด python -m pip
๋ฅผ ์คํํด ๋ณด์ญ์์ค. ๋ํผ ์คํฌ๋ฆฝํธ๊ฐ ์ค๋จ๋๋๋ผ๋ python -m pip
๊ฐ ์๋ํ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค. ์๋ํ์ง ์์ผ๋ฉด ์ ๋ฌธ์ ๋ฅผ ์ฝ๋๋ค.sudo pip
ํ์ง ๋ง์ญ์์ค. ์์คํ
์ ๋ง๊ฐ๋จ๋ฆด ๊ฐ๋ฅ์ฑ์ด ๋์ผ๋ฉฐ ์ถฉ๋ถํ ๋์์ง ์์ ๊ฒฝ์ฐ ๋ฃจํธ๋ก ์๊ฒฉ ์ฝ๋ ์คํ์ ์ํํ๊ณ ์์ต๋๋ค.์์ฝํ์๋ฉด ์ด๊ฒ์ ๋จ์ผ ํ๋ก์ ํธ/๊ฐ์ธ์ ์๋ชป์ด ์๋๋ฉฐ ๋ชจ๋ ์ฌ๋์ด ์์ ์ ํ๋์ ์ทจํ๋ ๋ฐ ํฉ๋นํ ์ด์ ๊ฐ ์์ต๋๋ค. ๋ค, ํ๊ฒฝ์ด ๋ง๊ฐ์ก์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ดํดํ๋ค. ์ง๊ธ ๋น์ฅ ๋น์ ์ ๋๊ณ pip๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํด ์์ ์๊ฐ์ ์์ํ๋ ์ฌ๋๋ค์ ๋น๋ํ์ง ๋ง์ญ์์ค.
์ฐ๋ฆฌ๋ฅผ ๋๊ณ ์ถ์ต๋๊น? https://donate.pypi.org ๋ ๋ฌธ์ ์ด๋ฉฐ, ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ์ด ๋ฌธ์ ์ถ์ ๊ธฐ์๋ ์ฐ๋ฆฌ๋ฅผ ๋์ธ ์ ์๋ ๋ง์ ๋ฏธํด๊ฒฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
์ด์ ์ด ๋ฌธ์ ์์ ๋ฌผ๋ฌ๋๊ฒ ์ต๋๋ค.
์, ๋ง์ง๋ง์ผ๋ก ๋๊ตฐ๊ฐ๊ฐ ์ฐ๋ฆฌ์ ๋ชจ๋ ์ฝ๋๋ฒ ์ด์ค๋ฅผ pip._internal
๋ก ์ฎ๊ธฐ๊ธฐ๋ก ํ ๊ฒฐ์ ์ ๋ํด ์ฌ์ ํ ๋
ผ์ํ๊ณ ์ถ์ดํ๋ค๋ฉด ์ ๋ฌธ์ ๋ฅผ ์ด๊ณ ์ธ๊ธ์ ํด์ฃผ์ญ์์ค. ๋๋ pip๊ฐ ์ ์ด๊ฒ์ ํ๋์ง์ ๋ํด ๋งํฌ์ ๋ชจ๋ ๊ฒ์ ์์ฑํ๋ ๋ฐ ์๊ฐ์ ํ ์ ํ ๊ฒ์
๋๋ค. ๊ทธ๋ ๊ฒ ํ๋ฉด @pypa/pip-committers๊ฐ ์ด ์ฃผ์ ์ ๋ํด ๋งํฌํ ์ ์๋ ๋จ์ผ ์์น๋ฅผ ๊ฐ๊ฒ ๋ฉ๋๋ค.
๋น๋ถ๊ฐ ์ด๊ฒ์ python3
/ pip3
์์ ์๋ํ์ฌ ๋กค๋ฐฑํ์ต๋๋ค.
python3 -m pip install --user --upgrade pip==9.0.3
@freckletonj ์ฌ๋๋ค์๊ฒ pip 9๋ก ๋๋๋ฆฌ๋ผ๊ณ ๋งํ์ง ๋ง์ญ์์ค. ์ด ๋ฐฉ๋ฒ์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ด ์๋๋๋ค. ํจ์ฌ ๋ ์ข์ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋์ดํ ๊ทํ์ ๋ฐ๋ก ์์ ์๋ ๋๊ธ์ ๋งํฌํ์ต๋๋ค.
@pradyunsg ์ฃ์กํ์ง๋ง ์ฌ์ ํ ์๋ํ์ง ์์ต๋๋ค.
$ pip3 install --upgrade --user pip
Collecting pip
Using cached https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl
Installing collected packages: pip
Found existing installation: pip 9.0.3
Uninstalling pip-9.0.3:
Successfully uninstalled pip-9.0.3
Successfully installed pip-10.0.1
$ pip3
Traceback (most recent call last):
File "/usr/local/bin/pip3", line 7, in <module>
from pip import main
ImportError: cannot import name 'main'
์์์ ๋งํฌํ https://github.com/pypa/pip/issues/5221#issuecomment -382069604์์:
hash -r pip # or hash -d pip
๋ค๋ฅธ ์ง๋ฌธ์ด ์๋ ์ฌ๋์ด ์์ผ๋ฉด ์ ๋ฌธ์ ๋ฅผ ์ฌ์ญ์์ค.
ํด๋น ๋ฌธ์ ์ ์๊ฒฌ ์น์ ์ ์ฌ์ฉ์๊ฐ ํน์ ๋ฌธ์ ๋ฐ ์๋ฃจ์ ์ ๋ํด ๋ ผ์ํ ์ ์๋๋ก ์ด๋ ค ์์ต๋๋ค. :)
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ฐ๋ฆฌ๋ฅผ ์ํ ์์ ์ฌํญ์ pip 9.03์ ๊ณ ์ ๋์ด ์์ผ๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋์ ์
๋ช ๋ฐฑํ ์์ ์ด์ง๋ง ๋ค๋ฅธ ์ฌ๋์ ๋์ธ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ!