Pip: Windows In-place pip ์—…๊ทธ๋ ˆ์ด๋“œ

์— ๋งŒ๋“  2013๋…„ 11์›” 05์ผ  ยท  89์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: pypa/pip

Windows์—์„œ pip install --ugrade pip ์˜ ์ƒํƒœ๋ฅผ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

PEP453์— ํ•„์š”

@pfmoore ?

์ด์— ๋Œ€ํ•œ ์˜ค๋ž˜๋œ ๋…ผ์˜๋Š” # 188์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

windows auto-locked bug

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

Windows์—์„œ๋Š” ๊ด€๋ฆฌ์ž ๋ชจ๋“œ์—์„œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฐฝ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ช…๋ น์„ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.
python -m pip install --upgrade pip

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‹น์‹ ์—๊ฒŒ ํšจ๊ณผ๊ฐ€ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋‚ด๊ฐ€ Window 10์„ ์ž‘๋™ํ•˜๊ฒŒ ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

ํ–‰์šด์„ ๋น•๋‹ˆ๋‹ค.

๋ชจ๋“  89 ๋Œ“๊ธ€

python -m pip install --upgrade pip ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” @vsajip ์ด exe์˜ ์ž์ฒด ๊ต์ฒด๊ฐ€ ์ž‘๋™ํ•˜๋„๋ก ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•˜๊ธฐ ์œ„ํ•ด exe ๋ž˜ํผ์—์„œ ์–ด๋–ค ํ˜•ํƒœ์˜ ๋งˆ์ˆ ์„ ๊ณ ๋ คํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ ์žˆ๋Š” distlib ๋ฒ„์ „์—์„œ ๊ทธ๊ฐ€ ์–ด๋–ค ์ผ์„ํ–ˆ๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ (pip)์˜ ๋„์›€์—†์ด ์ˆ˜ํ–‰ ํ•  ์ˆ˜์žˆ๋Š” ์ž‘์—…์ธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ์ด๊ฒƒ์„ ์œ„ํ•ด pip์— ์ถ”๊ฐ€ ๋œ ์ฝ”๋“œ๊ฐ€ ์—†๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” ์ด๊ฒƒ์ด ์‚ฌ์†Œํ•œ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์—๊ฒŒ`python -m pip '๋ฅผ ์‚ฌ์šฉํ•˜๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์€ Windows๊ฐ€ ์—ด๋ฆฐ ํŒŒ์ผ์˜ ์‚ญ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ๊ธฐ๋ณธ์ด๋ผ๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ ์™„๋ฒฝํ•˜๊ฒŒ ์ˆ˜์šฉ ๊ฐ€๋Šฅํ•œ ๋Œ€๋‹ต์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

๊ถ๊ทน์ ์œผ๋กœ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ๋ณต์žก์„ฑ (๊ฒฐ๊ณผ์ ์ธ ์œ ์ง€ ๊ด€๋ฆฌ ๋น„์šฉ ํฌํ•จ)๊ณผ ์œ„ํ—˜์„ ๊ฐ์ˆ˜ํ•˜๊ณ  ์‹ถ์€์ง€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” pip install --upgrade pip ๋ฉ”์‹œ์ง€๋ฅผ ์ธ์‡„ํ•˜์—ฌ python -m pip install --upgrade pip ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์—ด๋ฆฐ ํŒŒ์ผ ํ•ธ๋“ค์ด๋‚˜ ์˜ˆ์™ธ๊ฐ€ ๋ฌด์—‡์ด๋“ ์— ๋Œ€ํ•ด ์˜ค๋ฅ˜๋ฅผ ๋˜์ ธ์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ €๋„ ๋˜‘๊ฐ™์€ ๋ง์„ํ•˜๋ ค๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.์ด ๋ฉ”์‹œ์ง€๊ฐ€ Windows์—๋งŒ ๋‚˜ํƒ€๋‚˜๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด Unix์—์„œ๋„ ๋™์ผํ•˜๊ฒŒ ๋งํ•˜๋Š” ๊ฒƒ์ด ํ•ฉ๋ฆฌ์ ์ž…๋‹ˆ๊นŒ (์ผ๊ด€๋œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์œ„ํ•ด). ๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” ํ”Œ๋žซํผ๊ฐ„์— ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค (๊ทธ๋ ‡๊ฒŒ ๋ฌธ์„œํ™”ํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์—).

๋˜ํ•œ pip๋ฅผ (์žฌ) ์„ค์น˜ํ•˜๋ ค๋Š” ๋ชจ๋“  ๋ช…๋ น์„ ํŠธ๋žฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด pip install -I pip ๋Š” ๋‹ค๋ฅธ ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ฐฝ๋ฌธ ๋งŒ๋˜์–ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ Windows ํ”Œ๋žซํผ์ด ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์ƒ๊ฐํ•˜๊ณ , ๊ฒฐ๊ตญ ๋” ์ข‹์€ ๊ฒƒ์„ ์œ„ํ•ด ์ œ๊ฑฐํ•ด์•ผ ํ•  ๋Œ€์ƒ์ด๋œ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์ด ๊ทธ๋ ‡๊ฒŒ ๋งํ•  ๊ฒƒ์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์—ˆ๋‹ค :-(

์†”์งํžˆ ๋งํ•ด์„œ, ์šฐ๋ฆฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•˜๊ณ  ์œ ์ง€ํ•˜๊ธฐ์œ„ํ•œ ์ถฉ๋ถ„ํ•œ Windows ์ „๋ฌธ ์ง€์‹์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— "๋” ์ข‹์€ ๊ฒƒ์„"์–ป์„ ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋ผ๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ํŒŒ์ผ์˜ ๋งŒ์กฑ์Šค๋Ÿฌ์šด ์ž์ฒด ๊ต์ฒด ์†”๋ฃจ์…˜์„ ๊ฐ–์ถ˜ _no_ Windows ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ™•์‹คํžˆ ๋‹ต์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์œผ๋ฉฐ, Unix ๊ธฐ๋ฐ˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋„์›€์„ ์ค„ ์ˆ˜์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋ฌด์–ธ๊ฐ€๋ฅผ ์–ป๋”๋ผ๋„ ๋ณต์žก ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํŠธ ์ฉ์Œ๊ณผ ๋ชจํ˜ธํ•œ ๋ฒ„๊ทธ์˜ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ ์ž‘๋™ํ•˜๋Š” ์†”๋ฃจ์…˜์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ๊ฒƒ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด "๊ณต์‹์ ์ธ ๋Œ€๋‹ต"์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ์„ค๋ช… ๋œ๋Œ€๋กœ ๊ฒฝ๊ณ ์™€ ํ•จ๊ป˜ ๋ฐฑ์—…ํ•˜๋ฉด pip install -U pip ์ž‘๋™ํ•˜๋Š” ๊ฒƒ๋งŒ ํผ ์™„๋ฒฝํ•˜์ง€ ์•Š๋”๋ผ๋„ ๊ฐ•๋ ฅํ•œ ์†”๋ฃจ์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•ญ์ƒ Windows ํ”Œ๋žซํผ์ด ํƒ€ํ˜‘ํ•ด์•ผํ•œ๋‹ค๋Š” ๋Š๋‚Œ์œผ๋กœ ์ธํ•ด์ด ํšŒ์‹ ์—์„œ ์–ด๋Š ์ •๋„ ์•ฝ๊ฐ„์˜ ์‹ฌ์ˆ  ๊ถ‚์€ ๋Š๋‚Œ์„ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๋‚˜๋Š” ํ•ฉ์˜๊ฐ€ ๋ฌด์—‡์ด๋“ ๊ฐ„์— ๊ฐˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ํฐ ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

PEP453์ด ์™„๋ฃŒ๋œ ํ›„ FWIW ๋‚ด ๋ชฉํ‘œ๋Š” Windows๋ฅผ ํฌํ•จํ•˜๋Š” ์ž์ฒด ํ…Œ์ŠคํŠธ ์ธํ”„๋ผ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ Windows ๋น„ ํŠธ๋กœํŠธ ๋ฌธ์ œ ์ค‘ ์ผ๋ถ€๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š”์ด ์‹œ์Šคํ…œ์˜ ๋ธŒ๋žœ๋“œ๋ฅผ ๋””์ž์ธ ํ•  ๊ฒฝ์šฐ ์ƒˆ๋กœ์šด ๋‚ด๊ฐ€ ๋” ๋งŽ์€ ์ˆ˜์ •ํ•  ์ˆ˜์žˆ๋Š” ๊ฒƒ๊ณผ ๊ฑฐ๋ผ๊ณ ํ•˜์ง€๋งŒ :) ๋‚˜๋Š” grumpyness์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊นฐ ๊ทธ๊ฒƒ์˜ ์‚ฌ์šฉ์ž ์นœํ™”์  ์ƒ๊ฐํ•˜์ง€ ์•Š๋Š”๋‹ค pip install -U pip ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ๋น„ Windows ์šฉ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜์‹ญ์‹œ์˜ค. ์ด๊ฒƒ์ด ์ƒˆ๋กœ์šด ๊ฒƒ์ด๋ผ๋ฉด ์‚ฌ์šฉ์ž epectation์ด ์—†์Šต๋‹ˆ๋‹ค.

์ข‹์Šต๋‹ˆ๋‹ค. ๊ณตํ‰ํ•˜๊ฒŒ ๋“ค๋ฆฝ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์—ญ์‚ฌ์ ์ธ ์‚ฌ์šฉ์ด ๋” ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์‹ค์ œ๋กœ ์œ ๋‹‰์Šค์—์„œ์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์ด ๋ฌด์—‡์ธ์ง€ ์ „ํ˜€ ๋Š๋ผ์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•„๋งˆ๋„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ฒ˜๋Ÿผ ์ผ๋ฐฉ์  ์‚ฌ๊ณ ์— ๋Œ€ํ•œ ์ฃ„์ฑ…๊ฐ์ด์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Linux์—์„œ Python์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์–ด๋–ค ๋Š๋‚Œ์ธ์ง€ ํ™•์ธํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. Python (3) ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๋„๊ตฌ๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ• ๋“ฑ์„ ๋ณด์—ฌ์ฃผ๋Š” "์ดˆ๋ณด์ž๋ฅผ์œ„ํ•œ Linux์˜ Python"๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? [ํ•ญ์ƒ ๋‹ค๋ฃจ์ง€ ์•Š๋Š” ํ•œ ๊ฐ€์ง€๋Š” "python"์ด ๊ธฐ๋ณธ์ ์œผ๋กœ Python 3์„ ์‹คํ–‰ํ•˜๋„๋กํ•˜๋Š” ๋ฐฉ๋ฒ•, "virtualenv"๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ Python 3 virtualenvs๋ฅผ ๋นŒ๋“œํ•˜๋„๋กํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค. 3์€ Windows๋ณด๋‹ค Unix์—์„œ 2 ๋“ฑ๊ธ‰์ž…๋‹ˆ๋‹ค. ์ด์ƒํ•˜๊ฒŒ๋„.]

์ผ๋ฐ˜์ ์œผ๋กœ ์‹œ์Šคํ…œ์ด Python์„ ์‚ฌ์šฉํ•˜๊ณ  ๋ชจ๋“  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ Python3์œผ๋กœ ์ด์‹๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— * nix์˜ python3์„ ๊ฐ€๋ฆฌํ‚ค๋Š” python ๋ฅผ ์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ˜„์žฌ Python3์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ผ๋ถ€ Linux ๋ฐฐํฌํŒ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Arch? ๊ทธ๋ฆฌ๊ณ  ์•„๋งˆ๋„ ๋‹ค์Œ ํŽ˜๋„๋ผ?

ํ , ์ €๋Š” ์‹œ์Šคํ…œ ์ˆ˜์ค€์—์„œ ๋งํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ •๋ง๋กœ ๊ฐœ์ธ ๊ณ„์ •์—์„œ ํŒŒ์ด์ฌ์— ์‚ฌ์šฉํ•  ๊ฒƒ์„ ์„ ํƒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๊นŒ? ๋‚ด ์ƒ๊ฐ์œผ๋กœ๋Š” ํ™•์‹คํžˆ ํŒŒ์ด์ฌ 3์„ 2 ๋“ฑ์œผ๋กœ ๋งŒ๋“ ๋‹ค ...ํ•˜์ง€๋งŒ ์œ ๋‹‰์Šค ์‚ฌ์šฉ์ž๊ฐ€ "pip3"๋˜๋Š” "pip3.3"๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฃ„์•…์ฒ˜๋Ÿผ ๋ชป ์ƒ๊ฒผ๋‹ค๋Š” ๊ฒƒ์„ ์ฐพ์ง€ ๋ชปํ•˜๋Š” ์ด์œ ๋ฅผ ์„ค๋ช…ํ•œ๋‹ค. :-)

(์–ด์จŒ๋“  ์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์„œ ์ฃผ์ œ๋ฅผ ๋ฒ—์–ด ๋‚ฌ์œผ๋ฏ€๋กœ ์‹ ๊ฒฝ ์“ฐ์ง€ ๋งˆ์‹ญ์‹œ์˜ค).

์‹œ์Šคํ…œ ๋นˆ ์•ž์— ~ / bin /์ด ์žˆ๋„๋ก ์…ธ์„ ์„ค์ •ํ•˜๊ณ  python์—์„œ python3์œผ๋กœ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ์„ค์ •ํ•˜๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด ๊ธฐ๊บผ์ด ๋„์™€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. :] IRC ๋˜๋Š” ์ด๋ฉ”์ผ.

Paul์ด ์–ธ๊ธ‰ ํ•œ ๋‚ด ์ž‘์—…์€ ์‚ฌ์šฉ์ค‘์ธ ํŒŒ์ผ (์˜ˆ : exe ๋ž˜ํผ)์„ ๋Œ€์ฒดํ•˜๊ธฐ์œ„ํ•œ 'deleteme'๋Œ„์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ์—ˆ์Šต๋‹ˆ๋‹ค. .exe ๋ž˜ํผ๊ฐ€ ์•„๋‹Œ distlib Python ์ฝ”๋“œ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ distlib.scripts ๋ชจ๋“ˆ์— ์žˆ์œผ๋ฉฐ ํ•ด๋‹น ๋ชจ๋“ˆ์ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์•„๋งˆ๋„ ์ด๊ฒƒ์€ Wheels์—์„œ ์ด๋ฏธ ํ•ด๊ฒฐ ๋œ ๊ฒƒ์ผ๊นŒ ์š”? ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด setuptools ๋ฌธ์ œ์ž…๋‹ˆ๊นŒ?

๊ฐ€๋Šฅํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์˜ค๋Š˜ ๋ช‡ ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆํƒ€๊น๊ฒŒ๋„ ์ ์–ด๋„ "pip install -I pip"๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (์ตœ์‹  ๋ฒ„์ „์˜ pip์—๋งŒ ์Šคํฌ๋ฆฝํŠธ ๋ž˜ํผ ์ง€์›์ด ์žˆ์œผ๋ฏ€๋กœ ์‹ค์ œ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ๋Š” ์–ด๋ ต์Šต๋‹ˆ๋‹ค) :

>pip install -f $x -I pip --use-wheel --no-index --pre
Ignoring indexes: https://pypi.python.org/simple/
Downloading/unpacking pip
Installing collected packages: pip
  Found existing installation: pip 1.5.dev1
    Uninstalling pip:
      Successfully uninstalled pip
Cleaning up...
Exception:
Traceback (most recent call last):
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 365, in _rmtree_unsafe
    os.unlink(fullname)
PermissionError: [WinError 5] Access is denied: 'c:\\users\\uk03306\\appdata\\local\\temp\\pip-zhbsiy-uninstall\\work\\scratch\\xxyy\\scripts\\pip.exe'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\basecommand.py", line 121, in main
    status = self.run(options, args)
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\commands\install.py", line 258, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\req.py", line 1330, in install
    requirement.commit_uninstall()
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\req.py", line 557, in commit_uninstall
    self.uninstalled.commit()
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\req.py", line 1743, in commit
    rmtree(self.save_dir)
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\util.py", line 42, in rmtree
    onerror=rmtree_errorhandler)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 460, in rmtree
    return _rmtree_unsafe(path, onerror)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 362, in _rmtree_unsafe
    _rmtree_unsafe(fullname, onerror)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 362, in _rmtree_unsafe
    _rmtree_unsafe(fullname, onerror)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 362, in _rmtree_unsafe
    _rmtree_unsafe(fullname, onerror)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 362, in _rmtree_unsafe
    _rmtree_unsafe(fullname, onerror)
  File "C:\Work\Scratch\xxyy\lib\shutil.py", line 367, in _rmtree_unsafe
    onerror(os.unlink, fullname, sys.exc_info())
  File "C:\Work\Scratch\xxyy\lib\site-packages\pip\util.py", line 61, in rmtree_errorhandler
    func(path)
PermissionError: [WinError 5] Access is denied: 'c:\\users\\uk03306\\appdata\\local\\temp\\pip-zhbsiy-uninstall\\work\\scratch\\xxyy\\scripts\\pip.exe'

Storing complete log in C:\Users\uk03306\pip\pip.log

๋”ฐ๋ผ์„œ pip ์€ (๋Š”) ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐ distlib.scripts ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. pip ์›Œํฌ ํ”Œ๋กœ์— ๋งž์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์„ค์น˜๊ฐ€ ๊ฑฐ๊ธฐ์—์žˆ๋Š” ๊ฒƒ์„ ๋ฎ์–ด ์“ฐ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์„ค์น˜ ์ œ๊ฑฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (๋ถ„๋ช…ํ•œ ์ด์œ  ๋•Œ๋ฌธ์—).

Windows๋Š” ์—ด๋ ค์žˆ๋Š” exe ํŒŒ์ผ์„ ๋ฎ์–ด ์“ฐ๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ์ˆ˜ ์—†์ง€๋งŒ ์ด๋ฆ„ ๋ณ€๊ฒฝ / ์ด๋™์€ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ธ€์Ž„, Win32 API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ฝ๊ฐ„์˜ ์กฐ์ž‘์„ํ•˜๋ฉด Sysinternal์˜ ํ”„๋กœ์„ธ์Šค ํƒ์ƒ‰๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์ฒ˜๋Ÿผ pip.exe ํ•ธ๋“ค์„ ๋‹ซ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ exe์— ๋Œ€ํ•œ ๋ชจ๋“  ํ•ธ๋“ค์„ ๋‹ซ์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์˜ˆ๋ฅผ ๋“ค์–ด ์ž‘์—… ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค๋ฉด, ์‚ฌ๋žŒ๋“ค์ด ์˜ค๋žซ๋™์•ˆ ๋…ผ์Ÿ์„ ๋ฒŒ์ด๋Š” ๋ฌธ์ œ ์˜€๊ณ  ํ•ญ์ƒ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ํ•ฉ์˜๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์—๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค ( "์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ๋‚˜์ค‘์— ์‚ญ์ œ"์™€ ๊ฐ™์€ ํŠธ๋ฆญ ์ œ์™ธ). ). ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—… ์ฝ”๋“œ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋น ๋ฅธ ํ•ดํ‚น์œผ๋กœ pip.exe๋Š” ์‹คํ–‰ ์ „์— ์—…๊ทธ๋ ˆ์ด๋“œ๋˜๊ณ  ์žˆ์Œ์„ ๊ฐ์ง€ํ•˜๊ณ  python -m pip {{ sys.argv }} ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์‹ค์ œ๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์–ด๋ฆฌ์„์€ ์ƒ๊ฐ ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. .exe๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ pip.exe๋ฅผ ๊ทธ๋Œ€๋กœ ๋‘์–ด๋„ ๋ ๊นŒ์š”? ๊ทธ๋ž˜๋„ ์„ค์น˜ ํ›„ pip.exe๋ฅผ ๋†“์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@dstufft ๋งž์Šต๋‹ˆ๋‹ค. "์ž์‹ ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ"์€ @techtonik ์ด Windows์—์„œ ์†Œ๋ฆฌ๋ฅผ๋‚ด๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๊ฐ„๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Unix exec ํ˜ธ์ถœ์— ํ•ด๋‹นํ•˜๋Š” ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ ์ ์œผ๋กœ pip.exe ๋Š” ์ง„์ž… ์ ์ด ๋ณ€๊ฒฝ๋˜๊ฑฐ๋‚˜ distlib ๋ž˜ํผ ์ฝ”๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋œ ๊ฒฝ์šฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ํ”ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ ์ผ์–ด๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์ดˆ๊ธฐ์—๋Š” ์ƒํ™ฉ์ด ์•ˆ์ • ๋  ๋•Œ๊นŒ์ง€ distlib ์ฝ”๋“œ๊ฐ€ ์•ฝ๊ฐ„ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค). ํ•  ์ˆ˜์žˆ๋Š” ์ผ์€ ์ž„์‹œ ์œ„์น˜์— ์ƒˆ pip.exe ๋ฅผ ์“ด ๋‹ค์Œ ํ˜„์žฌ ์œ„์น˜์™€ ๋™์ผํ•˜๋ฉด ๊ฑด๋„ˆ ๋›ฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•  ๋•Œ ์˜ค๋ฅ˜๋ฅผ ํ”ผํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ์˜ 99 %๋Š” ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.

BTW, ์šฐ๋ฆฌ๋Š” ์—ฌ๊ธฐ์—์„œ ์›์„ ๊ทธ๋ฆฌ๋ฉฐ ๋Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Vinay์˜ ์ด์ „ ์˜๊ฒฌ์— ๋”ฐ๋ฅด๋ฉด, ์ด๊ฒƒ์€ distlib (ํ•ด๊ฒฐํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ณณ)์—์„œ ํ•ด๊ฒฐ๋˜์—ˆ์ง€๋งŒ pip๋Š” ์ž‘๋™ ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ API๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. distlib ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด pip ์ „์šฉ ์†”๋ฃจ์…˜์„ ์ž‘์„ฑํ•  ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค (๋ฌธ์ œ๊ฐ€ ๋ณด์ฆํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋ณต์žกํ•˜์ง€ ์•Š์€ ๊ฐ•๋ ฅํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•œ ๋ฐฉ์‹์œผ๋กœ ์ˆ˜ํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์— ํšŒ์˜์ ์ž…๋‹ˆ๋‹ค).

์•”์‹œ:

  1. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ http://www.pip-installer.org/en/latest/installing.html#install-or-upgrade-pip์˜ pip ๋ฌธ์„œ์— ์„น์…˜์„ ์ถ”๊ฐ€ํ•˜์—ฌ Windows์—์„œ python -m pip ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์–ธ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. pip ์ž์ฒด๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ๋•Œ. ์–ธ์  ๊ฐ€๋Š”์ด ์ผ์„ ํ•  ๊ธฐํšŒ๊ฐ€ ์žˆ์„์ง€ ๋ชจ๋ฅด์ง€๋งŒ์ด ๋ฌธ์ œ์— ๊ธฐ์—ฌํ•œ ์‚ฌ๋žŒ๋“ค์˜ PR์€ ๊ฐ์‚ฌํ•˜๊ฒŒ ๋ฐ›์•„ ๋“ค์—ฌ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค :-).
  2. ๋ˆ„๊ตฌ๋‚˜ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ ์ด๋ฅผ ๊ตฌํ˜„ํ•  ์ค€๋น„๊ฐ€๋˜์–ด ์žˆ๋‹ค๋ฉด PR์„ ์˜ฌ๋ ค์•ผํ•˜๋ฉฐ ์šฐ๋ฆฌ๋Š” ์ œ์•ˆ ๋œ ์ ‘๊ทผ ๋ฐฉ์‹์ด ์•„๋‹Œ ์‹ค์ œ ์ฝ”๋“œ๋ฅผ ๊ฒ€ํ†  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์‹ค์ œ ์ž‘์—… ์ฝ”๋“œ๊ฐ€์ด ๋ฌธ์ œ๋ฅผ ์•ž์œผ๋กœ ๋‚˜์•„๊ฐ€๊ฒŒ ํ•  ์œ ์ผํ•œ ๋‹จ๊ณ„์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹ค๋ฅธ ์†”๋ฃจ์…˜์„ ์‹œ๋„ํ•˜์ง€ ์•Š๊ณ  ๋ฌธ์„œ๋ฅผ ๋ถ€ ํ’€๋ฆฌ๋Š” ๋ฐ -1์ž…๋‹ˆ๋‹ค.

์ง€๊ธˆ ๋‹น์žฅ ํšจ๊ณผ๊ฐ€์žˆ๋Š” ๊ฒƒ์„ ๋ฌธ์„œํ™”ํ•˜๋Š” ๋ฐ +1์ž…๋‹ˆ๋‹ค.

๋ฌธ์„œ ์ฃผ์„์„ ์‚ฌ์šฉํ•ด๋„ ์—ฌ์ „ํžˆ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํ•ด๊ฒฐ์ฑ…์ด ์•„๋‹ˆ๋ฉฐ Windows์— ๋Œ€ํ•œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์ž˜๋ชป ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์–ด์ฉŒ๋ฉด ์ด๊ฒƒ์€ ๋ฏธ์นœ ์ง“์ด์ง€๋งŒ ํ•ญ์ƒ ์ด๋ ‡๊ฒŒํ•ฉ๋‹ˆ๋‹ค.

$ curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python

๋ฌผ๋ก  libcurl์ด ์žˆ์–ด์•ผํ•˜์ง€๋งŒ ์—ฌ๊ธฐ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” Windows ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Mac์— ์„ค์น˜ํ•˜๋ ค๊ณ ํ–ˆ๋Š”๋ฐ ์ด๊ฒƒ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

Alexs-MacBook- Air : Pipmodules aleand $ pip install -U pip
-bash : pip : ๋ช…๋ น์„ ์ฐพ์„ ์ˆ˜ ์—†์Œ
Alexs-MacBook- Air : Pipmodules aleand $ python get-pip.py
pip ๋‹ค์šด๋กœ๋“œ / ํ’€๊ธฐ
pip-1.5.5-py2.py3-none-any.whl ๋‹ค์šด๋กœ๋“œ (1.2MB) : 1.2MB ๋‹ค์šด๋กœ๋“œ
์ˆ˜์ง‘ ๋œ ํŒจํ‚ค์ง€ ์„ค์น˜ : pip
์ฒญ์†Œ...
์˜ˆ์™ธ:
์—ญ ์ถ”์  (๊ฐ€์žฅ ์ตœ๊ทผ ํ˜ธ์ถœ ๋งˆ์ง€๋ง‰) :
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/basecommand.py", 122 ํ–‰, ๊ธฐ๋ณธ
์ƒํƒœ = self.run (์˜ต์…˜, ์ธ์ˆ˜)
์‹คํ–‰์ค‘์ธ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/commands/install.py"ํŒŒ์ผ, 283 ํ–‰
requirements_set.install (install_options, global_options, root = options.root_path)
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/req.py", ์ค„ 1435, ์„ค์น˜ ์ค‘
requirements.install (install_options, global_options, _args, * _kwargs)
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/req.py", ์ค„ 671, ์„ค์น˜ ์ค‘
self.move_wheel_files (self.source_dir, root = root)
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/req.py", 901 ํ–‰, move_wheel_files
pycompile = self.pycompile,
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/wheel.py", ์ค„ 215, move_wheel_files
clobber (์†Œ์Šค, lib_dir, True)
ํŒŒ์ผ "/var/folders/8g/b9q8snrd5ln_d5hqnwh2_86r0000gn/T/tmpFTGrC3/pip.zip/pip/wheel.py", 205 ํ–‰, clobber
os.makedirs (destdir)
makedirs์—์žˆ๋Š” ํŒŒ์ผ "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", 157 ํ–‰
mkdir (์ด๋ฆ„, ๋ชจ๋“œ)
OSError : [Errno 13] ๊ถŒํ•œ ๊ฑฐ๋ถ€ ๋จ : '/Library/Python/2.7/site-packages/pip'

/Users/aleand/Library/Logs/pip.log์— ์‹คํŒจ์— ๋Œ€ํ•œ ๋””๋ฒ„๊ทธ ๋กœ๊ทธ ์ €์žฅ

@zaducu , Mac๊ณผ ํ•จ๊ป˜ ์‚ฌ์ „ ์„ค์น˜๋œ Python ๋ฒ„์ „์˜ pip ๋ฒ„์ „์„ ์—…๋ฐ์ดํŠธํ•˜๋ ค๊ณ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ํŠธ๋ ˆ์ด์Šค ๋ฐฑ์—์„œ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์ „ ์„ค์น˜๋œ ๋ฒ„์ „์„ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ sudo ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๊ฒฉ ์ฆ๋ช…์„ ๋†’์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค.

$ sudo curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python

์‚ฌ์šฉํ•˜๋ ค๋ฉด sudo ๋‹น์‹ ์€ ์ž์‹ ์„ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค /etc/sudousers . Google it๊ณผ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๋Š” ์ˆ˜๋งŽ์€ ๋งํฌ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Mac์€ ๋˜‘๋˜‘ํ•ฉ๋‹ˆ๋‹ค. /System/Frameworks/Python.framework site-pacakges ํด๋”๋ฅผ ์†์ƒ์‹œํ‚ค๋Š” ๋Œ€์‹  ํŒจํ‚ค์ง€๋ฅผ /Library/Python site-pacakges ๋ณด๊ด€ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์ด! ๊ทธ๋Ÿฌ๋‚˜์ด ํด๋”์— ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ๋ฃจํŠธ ๊ถŒํ•œ์ด์žˆ๋Š” ๊ด€๋ฆฌ์ž ์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ sudo .

๊ณ ๋ คํ•  ๋Œ€์•ˆ์€ virtualenv ๋ฐ / ๋˜๋Š” .local ํด๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ธ ํŒจํ‚ค์ง€์™€ ๋ชจ๋“ˆ์„ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋กœ์ปฌ ํด๋” ์‚ฌ์šฉ์— ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด distutils ๋Œ€์‹  pip ์™€์˜ ์ง€์‹œ์— ๋”ฐ๋ผ ํŒŒ์ด์ฌ ๋ชจ๋“ˆ์„ ์„ค์น˜๋ฅผ .

์‚ฌ์ „ ์„ค์น˜๋œ Python์„ ์‚ฌ์šฉํ•˜๋Š” ๋‹ค๋ฅธ ๋Œ€์•ˆ์€ ๊ณต์‹ Python , homebrew , MacPorts, Fink๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ์ง์ ‘ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ณต์‹ Python์˜ ๊ฒฝ์šฐ ์—ฌ์ „ํžˆ sudo ํ•˜์ง€๋งŒ /System/Frameworks ์•„๋‹Œ /System/Library/Frameworks /System/Frameworks ์— ๋Œ€๋ถ€๋ถ„์˜ ํ•ญ๋ชฉ์ด ์„ค์น˜๋ฉ๋‹ˆ๋‹ค. Homebrew์˜ ๊ฒฝ์šฐ sudo ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. MacPorts ๋˜๋Š” Fink์— ๋Œ€ํ•ด ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์—ฌ์ „ํžˆ Windows์—์„œ 1.5.4์—์„œ 6.0.8๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

E : DistribProgramming> pip install -U pip
https://pypi.python.org/packages/py2.py3/p/pip/pip-6.0.8-py2.py3-none-any.whl#md5 = 41e73fae2c86ba2270ff51c1d86์—์„œ pip ๋‹ค์šด๋กœ๋“œ / ํ’€๊ธฐ
f7e09
์ˆ˜์ง‘ ๋œ ํŒจํ‚ค์ง€ ์„ค์น˜ : pip
๊ธฐ์กด ์„ค์น˜ ๋ฐœ๊ฒฌ : pip 1.5.4
pip ์ œ๊ฑฐ :
pip๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
์ฒญ์†Œ...
์˜ˆ์™ธ:
์—ญ ์ถ”์  (๊ฐ€์žฅ ์ตœ๊ทผ ํ˜ธ์ถœ ๋งˆ์ง€๋ง‰) :
_rmtree_unsafe์˜ ํŒŒ์ผ "C : Python3.3-32libshutil.py", 371 ํ–‰
os.unlink (์ „์ฒด ์ด๋ฆ„)
PermissionError : [WinError 5] ๊ธฐ๋ณธ ์„ค์ • : 'c : usersbialixappdatalocaltemppip-6i_i7a-uninstallpython3.3-32scriptsp
ip.exe '

์œ„์˜ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ๋‹ค๋ฅธ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ญ ์ถ”์  (๊ฐ€์žฅ ์ตœ๊ทผ ํ˜ธ์ถœ ๋งˆ์ง€๋ง‰) :
ํŒŒ์ผ "C : Python3.3-32libsite-packagespipbasecommand.py", 122 ํ–‰, ๊ธฐ๋ณธ
write_debug_log = check_path_owner (debug_log_path)
ํŒŒ์ผ "C : Python3.3-32libsite-packagespipcommandsinstall.py", 283 ํ–‰, ์‹คํ–‰ ์ค‘
build_delete = ((options.no_clean ๋˜๋Š” options.build_dir) ์•„๋‹˜)
"C : Python3.3-32libsite-packagespipreq.py"ํŒŒ์ผ, 1443 ํ–‰, ์„ค์น˜์‹œ
commit_uninstall์˜ ํŒŒ์ผ "C : Python3.3-32libsite-packagespipreq.py", 610 ํ–‰
ํŒŒ์ผ "C : Python3.3-32libsite-packagespipreq.py", 1860 ํ–‰, ์ปค๋ฐ‹
rmtree์—์žˆ๋Š” "C : Python3.3-32libsite-packagespiputil.py", 43 ํ–‰ ํŒŒ์ผ
rmtree์˜ ํŒŒ์ผ "C : Python3.3-32libshutil.py", 478 ํ–‰
return _rmtree_unsafe (path, onerror)
_rmtree_unsafe์—์žˆ๋Š” ํŒŒ์ผ "C : Python3.3-32libshutil.py", 368 ํ–‰
_rmtree_unsafe (์ „์ฒด ์ด๋ฆ„, ์˜ค๋ฅ˜ ๋ฐœ์ƒ)
_rmtree_unsafe์—์žˆ๋Š” ํŒŒ์ผ "C : Python3.3-32libshutil.py", 368 ํ–‰
_rmtree_unsafe (์ „์ฒด ์ด๋ฆ„, ์˜ค๋ฅ˜ ๋ฐœ์ƒ)
_rmtree_unsafe์—์žˆ๋Š” ํŒŒ์ผ "C : Python3.3-32libshutil.py", 368 ํ–‰
_rmtree_unsafe (์ „์ฒด ์ด๋ฆ„, ์˜ค๋ฅ˜ ๋ฐœ์ƒ)
_rmtree_unsafe์˜ ํŒŒ์ผ "C : Python3.3-32libshutil.py", 373 ํ–‰
onerror (os.unlink, ์ „์ฒด ์ด๋ฆ„, sys.exc_info ())
rmtree_errorhandler์˜ ํŒŒ์ผ "C : Python3.3-32libsite-packagespiputil.py", 62 ํ–‰
PermissionError : [WinError 5] ๊ธฐ๋ณธ ์„ค์ • : 'c : usersbialixappdatalocaltemppip-6i_i7a-uninstallpython3.3-32scriptsp
ip.exe '

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์‹ค์ œ์ ์ธ ์˜๋ฏธ์—์„œ ๊ณ ์น  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค (์ ์–ด๋„ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด ์™„๋ฒฝํ•˜๊ณ  ์ž‘๋™ํ•˜๋Š” ํŒจ์น˜๋ฅผ ์ œ๊ณตํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์•„์ง ์•„๋ฌด๋„ ๊ณ ์น  ๋ฐฉ๋ฒ•์„ ์ฐพ์ง€ ๋ชปํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋ณธ์งˆ์ ์œผ๋กœ Windows ์ œํ•œ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค).

Windows์—์„œ pip๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์€ python -m pip install -U pip ์ž…๋‹ˆ๋‹ค.

@pfmoore Python 2.6์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

[py26] C:\Users\IEUser>python -m pip --version
C:\Users\IEUser\Anaconda\envs\py26\python.exe: pip is a package and cannot be directly executed

@dalcinl ํ•œ์ˆจ. ๋‚˜๋Š” ํŒŒ์ด์ฌ 2.6์— ๋Œ€ํ•ด ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์„ ์‹ซ์–ดํ•œ๋‹ค :-)

๋‚ด๊ฐ€ ๊ธฐ์–ตํ•œ๋‹ค๋ฉด, python -m pip.__main__ ๊ฐ€ ๊ฑฐ๊ธฐ์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ํ…Œ์ŠคํŠธ ํ•  ์ˆ˜์žˆ๋Š” Python 2.6 ์‚ฌ๋ณธ์ด ์—†์Šต๋‹ˆ๋‹ค. ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค ...

๋ฐฉ๊ธˆ Python 2.6์—์„œ ํ…Œ์ŠคํŠธํ–ˆ์œผ๋ฉฐ python -m pip.__main__ ์‹ค์ œ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”!

python -m pip install -U pip ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค (w7, powershell, chocolatey๋ฅผ ํ†ตํ•ด Python ์„ค์น˜). ๊ถŒํ•œ ๋ฌธ์ œ๋กœ ์„ค์น˜๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

PS C:\tools> python --version
Python 3.4.3
PS C:\tools> pip --version
pip 6.0.8 from C:\tools\python\lib\site-packages (python 3.4)
PS C:\tools> python -m pip install -U pip
You are using pip version 6.0.8, however version 7.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.0.1-py2.py3-none-any.whl#md5=9b403ba9b82d4a1e5fda5b6cc8952b57
  Using cached pip-7.0.1-py2.py3-none-any.whl
Installing collected packages: pip
  Found existing installation: pip 6.0.8
    Uninstalling pip-6.0.8:
      Exception:
      Traceback (most recent call last):
        File "C:\tools\python\lib\shutil.py", line 523, in move
          os.rename(src, real_dst)
      PermissionError: [WinError 5] Access is denied: 'c:\\tools\\python\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst' -> 'C:\\Users\\Administrator\\AppData\\Local\\Temp\\pip-4ghq1oa9-uninstall\\tools\\python\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst'

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "C:\tools\python\lib\site-packages\pip\basecommand.py", line 232, in main
          status = self.run(options, args)
        File "C:\tools\python\lib\site-packages\pip\commands\install.py", line 347, in run
          root=options.root_path,
        File "C:\tools\python\lib\site-packages\pip\req\req_set.py", line 543, in install
          requirement.uninstall(auto_confirm=True)
        File "C:\tools\python\lib\site-packages\pip\req\req_install.py", line 667, in uninstall
          paths_to_remove.remove(auto_confirm)
        File "C:\tools\python\lib\site-packages\pip\req\req_uninstall.py", line 126, in remove
          renames(path, new_path)
        File "C:\tools\python\lib\site-packages\pip\utils\__init__.py", line 316, in renames
          shutil.move(old, new)
        File "C:\tools\python\lib\shutil.py", line 536, in move
          os.unlink(src)
      PermissionError: [WinError 5] Access is denied: 'c:\\tools\\python\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst'

์ƒ๊ฐ?

ํ•ด๋‹น ํŒŒ์ผ์„ ์ž  ๊ทธ๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ๊ถŒํ•œ์ด ์—†์–ด์•ผํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค. ์ดˆ์ฝœ๋ฆฟ ๋ฌธ์ œ์ผ๊นŒ์š”? ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์—์„œ ํ•ด๋‹น ํŒŒ์ผ์„ ์ˆ˜๋™์œผ๋กœ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@AmazingHorse ์‹œ๋„

curl -k https://bootstrap.pypa.io/get-pip.py | python

cURL์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๊นŒ?

ํฅ๋ฏธ๋กญ๊ฒŒ๋„ @pfmoore , ๊ทธ ํŒŒ์ผ์€ ๊ด€๋ฆฌ์ž ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ์—์„œ๋„ ์ž ๊ฒจ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ pip๊ฐ€ ์•„๋‹Œ Windows ๊ถŒํ•œ ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค.

๋‚ด ํŒŒ์ด์ฌ์ด C :์˜ Windows ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์™ธ๋ถ€์— ์„ค์น˜๋˜์—ˆ๋‹ค๋Š” ์‚ฌ์‹ค๊ณผ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ด๊ฒƒ์„ ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰ ํ•  ๊ฒƒ์ด์ง€๋งŒ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด๊ฒƒ์ด ์›์ธ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์„ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

๊ฑด๋ฐฐ๋“ค

@AmazingHorse ์†”์งํžˆ ๋ชจ๋ฅด๊ฒ ์–ด์š”. ๋‹ค๋ฅธ ๊ฐ€๋Šฅ์„ฑ์€ Chocolatey๊ฐ€ Python์„ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ํŠน๋ณ„ํ•œ ๊ฒƒ์ด์žˆ์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ถ”์ ๊ธฐ์— ๋ฌธ์ œ๋ฅผ๋ณด๊ณ ํ•˜๊ณ  (๊ทธ๋“ค์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๊นŒ?) ๊ทธ๋“ค์ด ๋งํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์˜ˆ, ๊ทธ๊ฒƒ์€ ์†Œ๋ฆฌ์—์„œ ํ• ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

Windows์—์„œ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋งคํ•‘ ํŒŒ์ผ (์ด๋ฏธ์ง€ ๋˜๋Š” ๋ฐ์ดํ„ฐ๋กœ ๋งคํ•‘ ๋จ)์„ ๋™์ผํ•œ ๋ณผ๋ฅจ์˜ ์ƒˆ ์ด๋ฆ„์œผ๋กœ ์ด๋ฆ„์„ ๋ฐ”๊พธ๊ฑฐ๋‚˜ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ rmtree ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๊ธฐ๋Š” ํŒŒ์ผ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜์—ฌ ๊ธฐ๋ณธ ์ž„์‹œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ ์–ด๋„ ๋””๋ ‰ํ† ๋ฆฌ ์ œ๊ฑฐ๋ฅผ ๋ฐฉํ•ดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ํŒŒ์ผ์ด ์ž„์‹œ ๋””๋ ‰ํ† ๋ฆฌ์™€ ๋‹ค๋ฅธ ๋ณผ๋ฅจ์— ์žˆ๊ฑฐ๋‚˜ ๊ณต์œ  ์œ„๋ฐ˜์œผ๋กœ ์ธํ•ด ๋˜๋Š” ํŒŒ์ผ์˜ ACL์ด ์ž‘์—…์„ ์ฐจ๋‹จํ•˜๋Š” ๊ฒฝ์šฐ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜์ด ๊ฒฝ์šฐ์—๋Š” ์ ์šฉ๋˜์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค.

๊ด€๋ฆฌ์ž ๊ทธ๋ฃน์ด ํ”„๋กœ์„ธ์Šค ํ† ํฐ์—์„œ ํ™œ์„ฑํ™” ๋œ ๊ฒฝ์šฐ ์ด๋ฆ„์ด ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์€ ์‹œ์Šคํ…œ์ด ๋‹ค์‹œ ์‹œ์ž‘๋  ๋•Œ ์‚ญ์ œ๋˜๋„๋ก ์˜ˆ์•ฝ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ctypes๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ MoveFileExW(path, None, MOVEFILE_DELAY_UNTIL_REBOOT) ๋ฅผ ํ˜ธ์ถœํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฌ๋‚˜ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž์—๊ฒŒ๋Š” ์„ธ์…˜ ๊ด€๋ฆฌ์ž์˜ PendingFileRenameOperations ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ๊ฐ’์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

Windows 7/10์—์„œ pip๋Š” ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค> pip install --upgrade pip
C : (SSD)์— ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์˜๋กœ๋“œ๋ฅผ ์‹œ๋„ํ•˜๊ณ  D : NUC์—์„œ ์‹œ์ž‘ํ•˜๋Š” ํŠธ๋ฆฌ์— ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด๊ฐ€๋ณด๊ณ ์žˆ๋Š” ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

D:\NUC\Python34>pip install --upgrade pip
You are using pip version 6.0.8, however version 7.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.1.2-py2.py3-none-any.whl#md5=5ff9fec0be479e4e36df467556deed4d
  Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB)
    100% |################################| 1.1MB 204kB/s
Installing collected packages: pip
  Found existing installation: pip 6.0.8
    Uninstalling pip-6.0.8:
      Exception:
      Traceback (most recent call last):
        File "D:\NUC\Python34\lib\shutil.py", line 523, in move
          os.rename(src, real_dst)
      OSError: [WinError 17] The system cannot move the file to a different disk drive: 'd:\\nuc\\python34\\scripts\\pip.exe' -> 'C:\\Users\\David\\AppData\\Local\\Temp\\pip-247i52js-uninstall\\nuc\\python34\\scripts\\pip.exe'

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "D:\NUC\Python34\lib\site-packages\pip\basecommand.py", line 232, in main
        File "D:\NUC\Python34\lib\site-packages\pip\commands\install.py", line 347, in run
        File "D:\NUC\Python34\lib\site-packages\pip\req\req_set.py", line 543, in install
        File "D:\NUC\Python34\lib\site-packages\pip\req\req_install.py", line 667, in uninstall
        File "D:\NUC\Python34\lib\site-packages\pip\req\req_uninstall.py", line 126, in remove
        File "D:\NUC\Python34\lib\site-packages\pip\utils\__init__.py", line 316, in renames
        File "D:\NUC\Python34\lib\shutil.py", line 536, in move
          os.unlink(src)
      PermissionError: [WinError 5] Access is denied: 'd:\\nuc\\python34\\scripts\\pip.exe'

AppData ํด๋” ๊ฒฝ๋กœ๋Š” ๋‚ด D : ๋“œ๋ผ์ด๋ธŒ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ›„์† ๋„๊ตฌ ๋ฐ ์‚ฌ์šฉ์„ ์œ„ํ•ด์ด ์ƒํ™ฉ์„ ๊ฐ€์žฅ ์ž˜ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ๊ต์ฐจ์ ์„ ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ๋‹ค๋ฅธ ๋“œ๋ผ์ด๋ธŒ์ฒ˜๋Ÿผ ๋ณด์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ •ํ™•ํ•œ ๊ฒฝ๋กœ๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์˜ˆ์ƒ ์œ„์น˜์™€ ์‹ค์ œ ์œ„์น˜์˜ ์ฐจ์ด์ ์„ ์Šคํฌ๋ฆฝํŒ… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— pip๋Š” django๋ฅผ ์ •์ƒ์ ์œผ๋กœ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค (๊ทธ๋Ÿฌ๋‚˜์ด ๋ฐœ๊ฒฌ์œผ๋กœ ์ด์–ด์ง„ ๋ฒ„์ „์— ๋Œ€ํ•ด ๋ถˆํ‰ํ–ˆ์Šต๋‹ˆ๋‹ค). ์Œ ... ๊ทธ๋ฆฌ๊ณ  ์ด์ œ ํ•์ด ๊นจ์ง„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

D:\NUC\Python34\Scripts>pip -h
Traceback (most recent call last):
  File "D:\NUC\Python34\lib\runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "D:\NUC\Python34\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:\NUC\Python34\Scripts\pip.exe\__main__.py", line 5, in <module>
ImportError: No module named 'pip'

D:\NUC\Python34\Scripts>dir
 Volume in drive D is TOSHIBA EXT
 Volume Serial Number is E085-D5D7

 Directory of D:\NUC\Python34\Scripts

08/25/2015  09:08 AM    <DIR>          .
08/25/2015  09:08 AM    <DIR>          ..
08/25/2015  09:08 AM            92,045 django-admin.exe
08/25/2015  09:08 AM               136 django-admin.py
08/25/2015  09:01 AM               346 easy_install-3.4-script.py
08/25/2015  09:01 AM            65,536 easy_install-3.4.exe
08/25/2015  09:01 AM               651 easy_install-3.4.exe.manifest
08/25/2015  09:01 AM               338 easy_install-script.py
08/25/2015  09:01 AM            65,536 easy_install.exe
08/25/2015  09:01 AM               647 easy_install.exe.manifest
08/25/2015  08:19 AM            91,984 pip.exe
08/25/2015  08:19 AM            91,984 pip3.4.exe
08/25/2015  08:19 AM            91,984 pip3.exe
08/25/2015  09:08 AM    <DIR>          __pycache__
              11 File(s)        501,187 bytes
               3 Dir(s)  328,895,152,128 bytes free

D:\NUC\Python34\Scripts>

python.exe -m pip install --upgrade pip

Python 2.6์—์„œ๋Š” python -m pip.__main__ install -U pip ๋ฅผ ์‹คํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ƒํ™ฉ์€ ์ผ๋ฐ˜์ ์œผ๋กœ Windows๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ €์™€ ๊ฐ™์€ ์ด์ „ Python ์‚ฌ์šฉ์ž๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ƒˆ๋กœ์šด Python ์‚ฌ์šฉ์ž์—๊ฒŒ๋„ ์ •๋ง ๋‚˜์œ ์ผ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ python -m pip install --upgrade pip ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์™„๋ฒฝํ•˜์ง€๋งŒ Windows์—์„œ๋Š” pip install --upgrade pip ์ด ์ž๋™์œผ๋กœ ๊ถŒ์žฅํ•ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. @dstufft ๋Š” ์ด๋ฏธ 2013 ๋…„์— ์ด๊ฒƒ์„ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค.ํ•˜์ง€ ๋ง์•„์•ผ ํ•  ํ•ฉ๋‹นํ•œ ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์ถ”์‹  : # 3462๋ฅผ์ด ๋ฌธ์ œ์˜ ์ค‘๋ณต์œผ๋กœ๋ณด๊ณ  ํ•ด ์ฃผ์…”์„œ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋ž˜์ปค์—์„œ WindowsError ์„ ๊ฒ€์ƒ‰ํ•ด๋„์ด ๋ฌธ์ œ๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋ผ๊ฑด๋Œ€์ด ์ฝ”๋ฉ˜ํŠธ ์ดํ›„์— ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์•„๋Š” ํ•œ, pip๊ฐ€ ์ƒˆ ๋ฒ„์ „์„ ๊ฐ์ง€ ํ•  ๋•Œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ์•ˆํ•˜๋Š” ๊ฒƒ์€ ์ด๋ฏธ ๋ช…๋ น์ž…๋‹ˆ๋‹ค. ์ƒํ™ฉ์€ ๊ทธ๋ ‡๊ฒŒ ๋‚˜์˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@pekkaklarck ๊ทธ๊ฒƒ์„ํ•˜์ง€ ์•Š๋Š” ์ฃผ๋œ ์ด์œ ๋Š” ๋ฐœ๊ฒฌํ•˜๊ธฐ๊ฐ€ ์ •๋ง ์–ด๋ ต ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š”, ๊ทธ ์ฃผ์‚ฌ์œ„๊ฐ€์—์„œ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์‹คํ•˜๊ฒŒ ๊ฐ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ• ๋ชจ๋ฅด๋Š” pip.exe ์˜คํžˆ๋ ค๋ณด๋‹ค๋Š” python -m pip . ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์„ ๊ฐ์ง€ํ•˜๋”๋ผ๋„ pip ๊ฐ€ ์„ค์น˜์ค‘์ธ ํ•ญ๋ชฉ์— ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค ( pip install --upgrade -r http://some.remote/requirements.txt ๊ณ ๋ ค-์š”๊ตฌ ์‚ฌํ•ญ ํŒŒ์ผ์„ ์ฝ์—ˆ์„ ๋•Œ ๋ฐœํ–‰ํ•˜๊ธฐ์— ๋„ˆ๋ฌด ๋Šฆ์Œ ๋ฉ”์‹œ์ง€).

๋ฌผ๋ก  100 % ์™„๋ฒฝํ•˜์ง€ ์•Š์€ ๊ฒƒ์€ ๊ตฌํ˜„ํ•˜๊ธฐ์— ์ „์ ์œผ๋กœ ํ•ฉ๋ฆฌ์ ์ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ฝ”๋„ˆ ์ผ€์ด์Šค๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์™„์ „ํžˆ ์œ ํšจํ•œ ์‚ฌ์šฉ์— ๋ฐ˜๋Œ€ํ•˜์ง€ ์•Š๋„๋กํ•˜๋Š” ๊ฒƒ์ด ์ •๋ง ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š”์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด PR ๋ณ‘ํ•ฉ์„ ํ™•์‹คํžˆ ๊ณ ๋ คํ•  ๊ฒƒ์ด์ง€๋งŒ, ํ•ต์‹ฌ pip ๊ฐœ๋ฐœ์ž ์ค‘ ๋ˆ„๊ตฌ๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ• ๋งŒํผ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค (๋‚˜๋Š” ์•„๋งˆ๋„ ํ•ต์‹ฌ ๊ฐœ๋ฐœ์ž ์ค‘ ๊ฐ€์žฅ ๋ฌด๊ฑฐ์šด Windows ์‚ฌ์šฉ์ž ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. python -m pip ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ธฐ์–ตํ•˜๋Š” ๊ฒƒ์€ ํ•ฉ๋ฆฌ์ ์œผ๋กœ ์‰ฝ์Šต๋‹ˆ๋‹ค).

์šฐ๋ฆฌ๊ฐ€ pip[.exe] ์ธ์ง€ ์•„๋‹Œ์ง€๋ฅผ ์•Œ์•„ ๋‚ด๊ธฐ ์œ„ํ•ด

"pip" in os.path.basename(sys.argv[0])

์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ˜ธ์ถœ์—์„œ [-U|--upgrade] ๋ฐ pip ๋ฅผ ๋ณด๋„๋ก ๊ฒฝ๊ณ ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ํ˜ธ์ถœ์˜ 90 %๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ฐ ์ถฉ๋ถ„ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@stonebig :์ด ๋ช…๋ น์ด ๊ถŒ์žฅ๋˜๋Š”์‹œ๊ธฐ๋ฅผ ๋ช…ํ™•ํžˆ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ƒˆ๋กœ์šด Python 2.7.11 ์„ค์น˜ ํ›„ pip install -U pip ์‹œ๋„ํ–ˆ์ง€๋งŒ์ด ์˜ค๋ฅ˜๋กœ ์ธํ•ด ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.

WindowsError : [์˜ค๋ฅ˜ 5] ์•ก์„ธ์Šค๊ฐ€ ๊ฑฐ๋ถ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค : 'c : userskoulutusappdatalocaltemppip-65z4kx-uninstallpython27scriptspip.exe'

@pfmoore : ์š”๊ตฌ ์‚ฌํ•ญ ํŒŒ์ผ์—์„œ pip๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๋“œ๋ฌผ๊ฒŒ ๋“ค๋ฆฌ๋ฉฐ ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. @Ivoz ์ฒ˜๋Ÿผ ์ €๋Š” pip.exe ์ด sys.argv ์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” WindowsError ๋ฅผ ์žก์•„์„œ ๋ฐ˜์‘ ํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@Ivoz ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ? pip.exe ๋ž˜ํผ๊ฐ€ python์„ ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค๋กœ ํ˜ธ์ถœ ํ–ˆ์œผ๋ฏ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ„๋‹จํ•œ ํ…Œ์ŠคํŠธ ( sys.argv[0] ์—์„œ pip.main() sys.argv[0] ์ธ์‡„)๋Š” ๋‹ค์Œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

>py -m pip
C:\Users\Gustav\AppData\Local\Programs\Python\Python35\lib\site-packages\pip\__main__.py

Usage:
...

>pip
C:\Users\Gustav\AppData\Local\Programs\Python\Python35\Scripts\pip

Usage:
...

>pip.exe
C:\Users\Gustav\AppData\Local\Programs\Python\Python35\Scripts\pip

Usage:

๊ทธ๊ฒƒ์€ ์ž‘๋™ํ•˜์ง€๋งŒ, ๋‹น์‹ ์€ ๋‹น์‹ ์ด ๋ฐœ๊ฒฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„์ฃผ์˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค ๊ทธ๋ž˜์„œ pip ์—์„œ sys.argv[0] ์ฒซ ๋ฒˆ์งธ ์˜ˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ ํฌํ•จ (์ฃผ pip ์˜ ๊ฒฝ๋กœ์— __main__.py )

์ง€์  ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์˜ค๋Š˜ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ฐฐ์› ๋‹ค :-)

@pekkaklarck WindowsError ๋ฅผ ์žก๋Š” ๋ฌธ์ œ๋Š” (๋‚ด๊ฐ€ ๊ธฐ์–ตํ•œ๋‹ค๋ฉด) ๊ฝค ๋Šฆ๊ฒŒ ๋ฐœ์ƒํ•˜๊ณ  ์„ค์น˜๊ฐ€ ๋ถ€๋ถ„์ ์œผ๋กœ ์™„๋ฃŒ๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (๋กค๋ฐฑํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š์Œ).

๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๋ˆ„๊ตฐ๊ฐ€ ๊ฐ€์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์„ ๋‚™๋‹ดํ•˜๊ณ  ์‹ถ์ง€ ์•Š์œผ๋ฏ€๋กœ ๊ทธ๊ฒƒ์— ๋งก๊ธธ ๊ฒƒ์ž…๋‹ˆ๋‹ค :-)

ํ•˜์ง€๋งŒ sys.argv [0]์—์„œ pip๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์—์ฃผ์˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ @pfmoore ๋Š” os.path.basename ๋Œ€ํ•œ ํ˜ธ์ถœ์ž…๋‹ˆ๋‹ค.

@Ivoz ํ•œ์ˆจ. ์—ฌ๊ธฐ๋Š” ๋„ˆ๋ฌด ๋Šฆ์€ ๋ฐค์ž…๋‹ˆ๋‹ค. ์˜ˆ, ๋ถ„๋ช…ํžˆ :-)

@pekkaklarck . ์˜ˆ๋ฅผ ๋“ค์–ด pip list (Windows์—์„œ)๋ฅผ ์ˆ˜ํ–‰ ํ•  ๋•Œ. ์ž‘๋…„ ํ† ๋ก ์—์„œ ๊ธฐ์–ตํ•˜๋Š” ํ•œ :

  • ์ด๊ฒƒ์ด pypa ํŒ€์ด ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ ์œ ์ผํ•œ ์†”๋ฃจ์…˜์ด์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ฐฝ์—๋งŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

pip_example

๋” ๋‚˜์€ ํ•ด๊ฒฐ์ฑ…์ด์žˆ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ด์ „ ์ƒํ™ฉ์—์„œ ์ด๋ฏธ ์™„๋ฒฝํ•œ ๋‹ต๋ณ€์˜ 80 %๋ผ๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

์•„๋งˆ๋„ ๋” ๋‚˜์€ ํ•ด๊ฒฐ์ฑ…์€ "pip"๋กœ ๋ฌถ์ด์ง€ ์•Š๊ณ  ํŒŒ์ด์ฌ ๊ธฐ๋ณธ Windows ์„ค์น˜์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” "upgrade_pip.bat"๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๊ทธ ๋ช…๋ น์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. (๋˜๋Š” ์ฝ˜๋‹ค์™€ ๋” ์ž˜ ์ผ์น˜ํ•˜๋ ค๋ฉด pip_update.bat ?)

์˜ค๋Š˜์€ ์ƒˆ๋กœ์šด Windows Python ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์„ ์‚ดํŽด๋ณด๋ฉด์„œ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋”์ฐํ–ˆ๋‹ค.
ํ•ด๋‹น ๋ช…๋ น์— ๋Œ€ํ•ด -m ์ž๋™์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? (์•„๋งˆ๋„ pip ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์ž์ฒด ๋ช…๋ น์œผ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๊นŒ?)

ํŠนํžˆ _pip ๋ช…๋ น์„ ์ •ํ™•ํžˆ ์‹คํ–‰ ํ•œ ํ›„์—๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ด๊ฒƒ์„ ๋ณผ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

screen shot 2016-02-23 at 9 51 53 pm

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉํ•˜๋„๋ก Windows ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งํ•  7.0.1 ์ด์ƒ ํ•์˜ ์ตœ์‹  ๋ฒ„์ „์—์„œ ๋กœ๊น… ์„ค์ •์ด ์ƒ๊ฐ python -m pip install --upgrade pip ๋Œ€์‹  pip install --upgrade pip .

: ์ŠคํŒŒํด ์Šค : : ์ผ€์ดํฌ : : ์ŠคํŒŒํด ์Šค :

์˜ˆ, 7.1 cf # 2830๋ถ€ํ„ฐ

์˜ํ˜•/

์Šน๋ฆฌ 10์—์„œ ๋‚ด ํ•์„ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡์ด ์ž˜๋ชป ๋˜์—ˆ๋‚˜์š”?

default

ํ—‰
์ •๋ง๋กœ ๋ฌด์—‡์ด ์ž˜๋ชป๋˜์—ˆ๋Š”์ง€ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด์ด ์Šค๋ ˆ๋“œ๋ฅผ ์ฝ์œผ์‹ญ์‹œ์˜ค. ์ด ์ž‘์—…์— ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด ์–ป์€ ์ถœ๋ ฅ์—์„œ โ€‹โ€‹๋งˆ์ง€๋ง‰ ์ค„์„ ์ฝ๊ณ  ์‹คํ–‰ ํ•œ ๊ฒƒ๊ณผ ๋น„๊ตํ•˜์‹ญ์‹œ์˜ค.

์•ˆ๋…•ํ•˜์„ธ์š”.
๋งž๋‚˜์š”? ๋งˆ์ง€๋ง‰ ๋นจ๊ฐ„์ƒ‰ ์„ ์€ Windows์—์„œ ํ˜„์žฌ ์œ„์น˜ ์—…๋ฐ์ดํŠธ์˜ ์ผ๋ฐ˜์ ์ธ ๊ฒฐ๊ณผ ์ธ ์•ก์„ธ์Šค ๊ฑฐ๋ถ€ ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๋””์ฝ”๋”ฉ ๋ฌธ์ œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. @grasx ์˜ ๋ฌธ์ œ๊ฐ€ ํ‚ค๋ฆด ์ฝ”๋“œ ํŽ˜์ด์ง€ ์‚ฌ์šฉ๊ณผ ๊ด€๋ จ์ด์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@grasx์—์„œ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ ์žˆ๋Š”์ง€ ์˜์‹ฌ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ Windows์—์„œ ๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. # 3463์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๋ฟก๋ฟก
๋‹น์‹ ์ด ์˜ณ์Šต๋‹ˆ๋‹ค. ๋‚ด ์ž˜๋ชป์ด์•ผ.

@ piotr-dobrogost @nmusatti @pekkaklarck ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ๋ณ€๊ฒฝ ํ–ˆ์œผ๋ฏ€๋กœ ์ด์ œ ASCII ๋ฌธ์ž ๋งŒ ํฌํ•จ๋˜์–ด pip๋ฅผ 8.1๋กœ ์„ฑ๊ณต์ ์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ–ˆ์Šต๋‹ˆ๋‹ค.

@grasx ๊ฐ€ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ๋ณ€๊ฒฝ ํ–ˆ๋‚˜์š”? ์ƒ๊ฒผ๋Š”๋ฐ , ์ œ๊ฐ€ โ€‹โ€‹Windows 7์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์ ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

๋ฌด์ž‘์œ„ ์•„์ด๋””์–ด, ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ exe ํŒŒ์ผ์„ ๋ฐ”๊พธ์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•

๋‚ด๊ฐ€ ์ดํ•ดํ•˜๋Š” ํ•œ exe ํŒŒ์ผ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๋งค์šฐ ์ž‘์€ ํŠธ๋žจํด๋ฆฐ์ž…๋‹ˆ๋‹ค.

๋” ์ค‘์š”ํ•œ ๋…ผ๋ฆฌ๋Š” ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์— ์žˆ์Šต๋‹ˆ๋‹ค.

@ pzz2011 ๊ธ€์Ž„, ์‚ฌ์‹ค ๋‚˜๋Š” ๋‚ด ์Šน๋ฆฌ๋ฅผ ๋‹ค์‹œ ์„ค์น˜ํ•˜๊ณ  ์ƒˆ ์‚ฌ์šฉ์ž ์ด๋ฆ„์„ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๊ฒฝ์šฐ์—๋Š” ์–ธ๊ธ‰ ๋œ ๋ชจ๋“  ์žฅ์†Œ์™€ ๊ฒฝ๋กœ์—์„œ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ๋Š” ๊ฒƒ์ด ๋” ์‰ฌ์› ์Šต๋‹ˆ๋‹ค. :)

@RonnyPfannschmidt .exe๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ•ญ๋ชฉ์— ๋”ฐ๋ผ foo.exe + foo-script.py (์ง€๊ธˆ ๋ฌด์—‡์„ํ•˜๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Œ)์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” setuptools, ๋ฐ˜๋ฉด distlib (๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ)๋Š” ๋‹จ์ผ foo.exe ๋งŒ๋“ญ๋‹ˆ๋‹ค foo.exe .

@grasx hhh ... ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋” ์‰ฌ์šด ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. 2.7.x์—์„œ 2.7.10์œผ๋กœ ํŒŒ์ด์ฌ์„ ๋‹ค์‹œ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿผ ์„ฑ๊ณต ๋ฏธ์†Œ ~

Windows์—์„œ๋Š” ๊ด€๋ฆฌ์ž ๋ชจ๋“œ์—์„œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฐฝ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ช…๋ น์„ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.
python -m pip install --upgrade pip

๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๋‹น์‹ ์—๊ฒŒ ํšจ๊ณผ๊ฐ€ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋‚ด๊ฐ€ Window 10์„ ์ž‘๋™ํ•˜๊ฒŒ ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

ํ–‰์šด์„ ๋น•๋‹ˆ๋‹ค.

@grasx ์ด์œ ๋Š” ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ Windows 8.1 ๋ฐ 10 ๋ชจ๋‘์—์„œ Python ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ "๋ชจ๋“  ์‚ฌ์šฉ์ž ์šฉ ์„ค์น˜"๋ฅผ ์„ ํƒํ•˜๋ฉด ํ•ด๋‹น ๋ฒ„๊ทธ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ ์„ค์น˜ํ•˜๊ณ  PATH ๋ฐ ์‚ฌ์šฉ์ž ์ง€์ • ์„ค์น˜๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ƒ๋‹จ ์ƒ์ž๊ฐ€ ์„ ํƒ ํ•ด์ œ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์„ค์น˜ ์œ„์น˜๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค. cmd์—์„œ "python -m pip install --upgrade pip"๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ ํ›„์— ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Windows ์‚ฌ์šฉ์ž์˜ ๊ฒฝ์šฐ FYI์ž…๋‹ˆ๋‹ค. Cygwin์„ ์„ค์น˜ํ•˜๋ฉด Python2.7์ด ์ž๋™์œผ๋กœ ์„ค์น˜๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค.

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py

(์˜ˆ, ๋จผ์ € wget ๋ฅผ ์„ค์น˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.)

image
์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•?

ํ—‰ํ—‰
์—ฌ๊ธฐ์—์„œ ํ…์ŠคํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์„ค๋ช… ์€ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ ์ฐฝ์—์„œ ํ…์ŠคํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๋ ค๋ฉด์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค. ์ด๋ ‡๊ฒŒํ•˜๋ฉด ๊ฒŒ์‹œ ํ•œ ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

pip ๋ฒ„์ „ 7.1.0์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ ๋ฒ„์ „ 9.0.1์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
'python -m pip install --upgrade pip'comm์„ ํ†ตํ•œ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
๊ณผ.
D : ํ”„๋กœ๊ทธ๋žจ ํŒŒ์ผ Python27libsite-packagespip-7.1.0-py2.7.eggpip_vendorrequ
estspackagesurllib3utilssl_.py:90 : InsecurePlatformWarning : ์ง„์ •ํ•œ SSLContex
t ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒํ•˜๋ฉด urllib3์ด SSL์„ ์ ์ ˆํ•˜๊ฒŒ ๊ตฌ์„ฑํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.
ํŠน์ • SSL ์—ฐ๊ฒฐ์ด ์‹คํŒจ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ htt๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
ps : //urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
ํ• ์ˆ˜์ง‘
pip-9.0.1-py2.py3-none-any.whl ๋‹ค์šด๋กœ๋“œ (1.3MB)
์˜ˆ์™ธ:
์—ญ ์ถ”์  (๊ฐ€์žฅ ์ตœ๊ทผ ํ˜ธ์ถœ ๋งˆ์ง€๋ง‰) :
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipbase
command.py ", 223 ํ–‰, ๊ธฐ๋ณธ
์ƒํƒœ = self.run (์˜ต์…˜, ์ธ์ˆ˜)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipcomm
andsinstall.py ", 282 ํ–‰, ์‹คํ–‰ ์ค‘
requirements_set.prepare_files (ํŒŒ์ธ๋”)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipreq
req_set.py ", 334 ํ–‰, prepare_files
functools.partial (self._prepare_file, finder))
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipreq
req_set.py ", 321 ํ–‰, _walk_req_to_install
more_reqs = handler (req_to_install)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipreq
req_set.py ", 491 ํ–‰, _prepare_file
session = self.session)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipdown
load.py ", 825 ํ–‰, unpack_url
์„ธ์…˜,
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipdown
load.py ", 673 ํ–‰, unpack_http_url
from_path, content_type = _download_http_url (link, session, temp_dir)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipdown
load.py ", 886 ํ–‰, _download_http_url
_download_url (resp, link, content_file)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpipdown
load.py ", 621 ํ–‰, _download_url
์ง„ํ–‰์ค‘์ธ ์ฒญํฌ์˜ ๊ฒฝ์šฐ _indicator (resp_read (4096), 4096) :
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpiputil
sui.py ", 135 ํ–‰, ๋ฐ˜๋ณต
self.next (n)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorprogress__init__.py ", 73 ํ–‰, ๋‹ค์Œ
self.update ()
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorprogressbar.py ", 82 ํ–‰, ์—…๋ฐ์ดํŠธ ์ค‘
self.writeln (์ค„)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorprogresshelpers.py ", 69 ํ–‰, writeln
print (์ค„, ๋ = '', ํŒŒ์ผ = self.file)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorcoloramaansitowin32.py ", 133 ํ–‰, ์“ฐ๊ธฐ
self.write_and_convert (ํ…์ŠคํŠธ)
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorcoloramaansitowin32.py ", 161 ํ–‰, write_and_convert
self.write_plain_text (ํ…์ŠคํŠธ, ์ปค์„œ, len (ํ…์ŠคํŠธ))
ํŒŒ์ผ "D : Program FilesPython27libsite-packagespip-7.1.0-py2.7.eggpip_ven
dorcoloramaansitowin32.py ", 166 ํ–‰, write_plain_text
self.wrapped.write (ํ…์ŠคํŠธ [์‹œ์ž‘ : ์ข…๋ฃŒ])
UnicodeEncodeError : 'ascii'์ฝ”๋ฑ์€ ์œ„์น˜ 8์—์„œ ๋ฌธ์ž u'u258f '๋ฅผ ์ธ์ฝ”๋”ฉ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
: ๋ฒ”์œ„์—์—†๋Š” ์„œ์ˆ˜ (128)

@ JingY0604 # 3463์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๊ธฐ์กด ์„ค์น˜๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  get-pip.py๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์‹  ๋ฒ„์ „์„ ์„ค์น˜ํ•˜์—ฌ pip๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/ofek/hatch์˜ ๊ฒฝ์šฐ self ์—…๋ฐ์ดํŠธ์˜ ๋ชจ๋“  ์ธ์Šคํ„ด์Šค๋ฅผ ํฌ์ฐฉํ•˜๊ณ  ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ Popens๊ฐ€ python -m pip install -U hatch ์„ (๋ฅผ) ์ฆ‰์‹œ ์ข…๋ฃŒํ•˜๋„๋ก ๋ช…์‹œ์ ์ธ --self ํ”Œ๋ž˜๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/ofek/hatch/blob/22e621715fbed36c2bfab35ae9fa9649ea6dfe1e/hatch/cli.py#L509

ํŽธ์ง‘ : ๊ธฐ์ˆ ์ ์œผ๋กœ python ๋Œ€์‹  sys.executable ๊ฐ€ ์‹ค์ œ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

@ofek # 4490์ด pip๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ๋” ๋‚˜์€ ๋ฉ”์‹œ์ง€ IIRC๋ฅผ ์ธ์‡„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ง€๊ธˆ ๋‹น์žฅ์€ pip์—†์ด ํŒŒ์ด์ฌ์„ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด ์•ž์œผ๋กœ pip ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•  ์ˆ˜ ์—†์„๊นŒ์š”?

c:\Python27>python.exe get-pip.py ERROR: To modify pip, please run the following command: c:\Python27\python.exe -m pip

c:\Python27>c:\Python27\python.exe -m pip install c:\Python27\python.exe: No module named pip

์•ˆ๋…•ํ•˜์„ธ์š” @ihormelnyk!

๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•œ ์กฐ๊ฑด์€ ๋„ˆ๋ฌด ๊ด‘๋ฒ”์œ„ํ–ˆ์Šต๋‹ˆ๋‹ค. "pip"๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ํฌํ•จ ๋œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ pip๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด "pip"๋ผ๋Š” ๋‹จ์–ด๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๋„๋ก get-pip.py์˜ ์ด๋ฆ„์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

10.0.1 ๋ฆด๋ฆฌ์Šค (์ด๋ฒˆ ์ฃผ์— ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Œ)๋Š”์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@pradyunsg ํŒ์„ ๊ณต์œ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. @ihormelnyk ์™€ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ get-pip.py ํŒŒ์ผ์˜ ์ด๋ฆ„์„ pip ๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ํฌํ•จ๋˜์ง€ ์•Š์€ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.

cmd inwindows์—์„œ pip๋ฅผ ์ธ์‡„ํ•˜์ง€๋งŒ ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์‹คํ–‰๊ธฐ์˜ ์น˜๋ช…์  ์˜ค๋ฅ˜ : ' ""d : program files (x86) python3.6python.exe ""D : Program Files (x86) python3.6Scriptspip.exe "'๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์ด๋ฏธ pip์— ๋Œ€ํ•œ ํ™˜๊ฒฝ์„ ์„ค์ •ํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@ BJQ98 ๋‹น์‹ ์€ # 5223์„๋ณด๊ณ  ์‹ถ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

pradyunsg๋Š” 10.0.1์ด ์ด๊ฒƒ์„ ๊ณ ์น  ๊ฒƒ์ด๋ผ๊ณ  ๋งํ–ˆ์ง€๋งŒ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ.

C:\Users\clarkk\AppData\Local\Programs\Python\Python36>python -m pip install -U 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
  Rolling back uninstall of pip
Exception:
Traceback (most recent call last):
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\basecommand.py", line 215, in main
    status = self.run(options, args)
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\commands\install.py", line 342, in run
    prefix=options.prefix_path,
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\req\req_set.py", line 784, in install
    **kwargs
  File "C:\Users\yangg\AppData\Roaming\Python\Python36\site-packages\pip\req\req_install.py", line 851, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\req\req_install.py", line 1064, in move_wheel_files
    isolated=self.isolated,
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\wheel.py", line 462, in move_wheel_files
    generated.extend(maker.make(spec))
  File "C:\Users\yangg\AppData\Roaming\Python\Python36\site-packages\pip\_vendor\distlib\scripts.py", line 372, in make
    self._make_script(entry, filenames, options=options)
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\_vendor\distlib\scripts.py", line 276, in _make_script
    self._write_script(scriptnames, shebang, script, filenames, ext)
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\_vendor\distlib\scripts.py", line 212, in _write_script
    launcher = self._get_launcher('t')
  File "C:\Users\clarkk\AppData\Roaming\Python\Python36\site-packages\pip\_vendor\distlib\scripts.py", line 351, in _get_launcher
    result = finder(distlib_package).find(name).bytes
AttributeError: 'NoneType' object has no attribute 'bytes'
You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

# 5343๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค pradyunsg, ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์†”๋ฃจ์…˜์ด ๋” ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € "python -m pip uninstall pip"๋ฅผ ์ˆ˜ํ–‰ ํ•œ ๋‹ค์Œ "python -m pip install -U pip"๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

์š”๊ตฌ ์‚ฌํ•ญ์ด ์ด๋ฏธ ์ตœ์‹  ์ƒํƒœ์ž…๋‹ˆ๋‹ค. c : userclarkkappdatalocalProgramsPythonPython36libsite-packages (10.0.1)์˜ pip

      Personally I think it should be windows only. I view it as a work around for the way the Windows platform works, and something that's a target to eventually remove for something nicer down the road.

์œ„์˜ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” ๋™์•ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์ด ๋  ์ˆ˜์žˆ๋Š” ๋‹จ์–ด์— ๋Œ€ํ•œ ๊ตฌ๋ฌธ ์˜ค๋ฅ˜

@AProNoob Python ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์•„๋‹Œ ๋ช…๋ น ํ”„๋กฌํ”„ํŠธ (cmd ๋˜๋Š” powershell)์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ! ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค!

์ด ์Šค๋ ˆ๋“œ๋Š” ๋‹ซํžŒ ํ›„ ์ตœ๊ทผ ํ™œ๋™์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™์œผ๋กœ ์ž ๊ฒผ์Šต๋‹ˆ๋‹ค. ๊ด€๋ จ ๋ฒ„๊ทธ์— ๋Œ€ํ•œ ์ƒˆ ๋ฌธ์ œ๋ฅผ์—ฌ์‹ญ์‹œ์˜ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰