<p>Windows의 Python 3.5μ—μ„œ virtualenvκ°€ μ‹€νŒ¨ν•¨</p>

에 λ§Œλ“  2015λ…„ 09μ›” 15일  Β·  16μ½”λ©˜νŠΈ  Β·  좜처: pypa/virtualenv

  1. 곡식 Windows μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ„ μ‚¬μš©ν•˜μ—¬ Python 3.5 μ„€μΉ˜
  2. κ»μ§ˆμ„ μ–»λ‹€
  3. python -m surepip (μ„€μΉ˜ ν”„λ‘œκ·Έλž¨μ΄ μ–΄λ–€ 이유둜 pipλ₯Ό μ„€μΉ˜ν•˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ—)
  4. python -m pip install virtualenv(버전 13.1.2 κ°€μ Έμ˜€κΈ°)
  5. 파이썬 -m 가상 ν™˜κ²½ ν™˜κ²½

λ‚˜λŠ” μ˜ˆμƒν•œλ‹€: ./env의 virtualenv

"컴퓨터에 VCRUNTIME140.dll이 μ—†κΈ° λ•Œλ¬Έμ— ν”„λ‘œκ·Έλž¨μ„ μ‹œμž‘ν•  수 μ—†μŠ΅λ‹ˆλ‹€."λΌλŠ” GUI 였λ₯˜ λŒ€ν™” μƒμžκ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

λΆ„λͺ…νžˆ virtualenvλŠ” vcruntime140.dll을 Python 3.5κ°€ Windowsμ—μ„œ μž‘λ™ν•˜λ„λ‘ μƒˆ virtualenv에 볡사해야 ν•©λ‹ˆλ‹€.

μ›λž˜ http://bugs.python.org/issue25119에 μ œμΆœλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μœ μ‚¬ν•˜κ²Œ, python3.dll λ₯Ό λ³΅μ‚¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ΄λŠ” PyQt5와 같은 일뢀 ν™•μž₯ λͺ¨λ“ˆμ΄ ImportError: DLL load failed: The specified module could not be found. μ‹€νŒ¨ν•¨μ„ μ˜λ―Έν•©λ‹ˆλ‹€.

λͺ¨λ“  16 λŒ“κΈ€

@zooba 졜고의 virtualenvκ°€ μ—¬κΈ°μ—μ„œ μ§„ν–‰λ˜μ–΄μ•Ό ν•˜λŠ” 방법에 λŒ€ν•œ 쑰언이 μžˆμŠ΅λ‹ˆκΉŒ? λͺ¨λ“  3.5 virtualenv에 dll을 λ³΅μ‚¬ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?

λ„€, 그럴 ν•„μš”κ°€ μžˆμŠ΅λ‹ˆλ‹€.

Windowsμ—μ„œλŠ” sys.prefix 및 join(sys.prefix, 'DLLs') μ—μ„œ λͺ¨λ“  vcruntime*.dll νŒŒμΌμ„ λ³΅μ‚¬ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ–΄λŠ μ‹œμ μ—μ„œ μš°λ¦¬λŠ” 이전 ν™•μž₯ λͺ¨λ“ˆκ³Όμ˜ μ—­ν˜Έν™˜μ„ μœ„ν•΄ vcruntime140.dll λ₯Ό DLL둜 이동할 κ²ƒμ΄μ§€λ§Œ μ–Έμ œκ°€ λ μ§€λŠ” μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€(아직 μ£Όμš” λ¦΄λ¦¬μŠ€μ— μžˆμ–΄μ•Ό ν•œλ‹€κ³  ν™•μ‹ ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€).

https://pypi.python.org/pypi/virtualenv-rewrite μ—μ„œλ„ 이 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆκΉŒ?

μ•„λ‹ˆμš”, virtualenv-rewriteλŠ” Python 3.5μ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€. (μ €λŠ” μ–Όλ§ˆ 전에 virtualenv-rewrite 14.1.0을 ν…ŒμŠ€νŠΈν–ˆμ§€λ§Œ Jenkinsμ—μ„œλŠ” μ—¬μ „νžˆ 잘 μž‘λ™ν•©λ‹ˆλ‹€.)

Windowsμ—μ„œ λ™μΌν•œ λ¬Έμ œκ°€ λ°œμƒν•˜κ³  슀크립트 섀정이 μ‹€μ œλ‘œ μ™„λ£Œλ˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— dll을 λ³΅μ‚¬ν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλŠ” μΆ©λΆ„ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λ™μΌν•œ 창에 python 2.7κ³Ό 3.5κ°€ 있고(λ‘˜ λ‹€ λͺ¨λ“  μ‚¬μš©μžμ—κ²Œ μ„€μΉ˜λ¨) λ‹€μŒ λͺ…령이 λͺ¨λ‘ μ‹€νŒ¨ν•©λ‹ˆλ‹€.

> virtualenv --python="C:\Python35\python.exe" env

(with virtualenvwrapper) > mkvirtualenv --python="C:\Python35\python.exe" env

> C:\Python35\Scripts\virtualenv-3.4.exe  --python="C:\Python35\python.exe" env

virtualenv v13.1.2κ°€ μžˆλŠ” Windows 10μ—μ„œ Python 3.5.1둜 이 버그λ₯Ό ν™•μΈν•˜μ‹­μ‹œμ˜€.

Btw, μž‘λ™ν•˜λ €λ©΄ 3.4둜 λ˜λŒλ €μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€.

virtualenv 15.0.3이 μ„€μΉ˜λœ Windows 10μ—μ„œ Python 3.5.2둜 이것을 ν™•μΈν•©λ‹ˆλ‹€.

virtualenv 15.0.3이 μžˆλŠ” Windows 8.1μ—μ„œ Python 3.5.2둜 이것을 ν™•μΈν•˜μ‹­μ‹œμ˜€.

virtualenv 15.0.3이 μ„€μΉ˜λœ Windows 7μ—μ„œ Python 3.5.2의 버그 확인

μ•Œμ•˜μ–΄. λ‚˜λŠ” 같은 λ¬Έμ œκ°€ μžˆμ—ˆλ‹€. https://sourceforge.net/projects/pywin32/ μ—μ„œ "pywin32"λ₯Ό μ„€μΉ˜ν–ˆμŠ΅λ‹ˆλ‹€.
κ·Έ ν›„ 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. pywin32μ—λŠ” Windows용 python ν™•μž₯이 μžˆμŠ΅λ‹ˆλ‹€.
Python 버전에 맞게 μ„€μΉ˜ν•˜μ‹­μ‹œμ˜€.
μ˜¬λ°”λ₯Έ 버전을 μ–»μ—ˆλŠ”μ§€ ν™•μΈν•˜μ‹­μ‹œμ˜€(Python 버전, 32λΉ„νŠΈ/64λΉ„νŠΈ λ“±κ³Ό 일치).
도움이 되기λ₯Ό λ°”λžλ‹ˆλ‹€.

Windows 7 Python 3.5.2의 경우 http://www.opendll.com/index.php?file-download=vcruntime140.dll&arch=64Bit&version=14.0.22816.0&dsc=Microsoft%AE-C-Runtime-Library# λ₯Ό C둜 λ³΅μ‚¬ν•©λ‹ˆλ‹€. \ μœˆλ„μš°

κ³ λ§ˆμ›Œμš”, μ—μ΄λ―Έν‹°ν”Œ! BTWλŠ” μ‹ λ’°ν•  수 μ—†λŠ” μž„μ˜μ˜ 인터넷 μ‚¬μ΄νŠΈμ—μ„œ DLL νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€. c:/Python3.5/(λ˜λŠ” Python 3.5λ₯Ό μ„€μΉ˜ν•œ λͺ¨λ“  μœ„μΉ˜)μ—μ„œ %PATH%의 λ””λ ‰ν„°λ¦¬λ‘œ λ³΅μ‚¬ν•˜κΈ°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€.

μœ μ‚¬ν•˜κ²Œ, python3.dll λ₯Ό λ³΅μ‚¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ΄λŠ” PyQt5와 같은 일뢀 ν™•μž₯ λͺ¨λ“ˆμ΄ ImportError: DLL load failed: The specified module could not be found. μ‹€νŒ¨ν•¨μ„ μ˜λ―Έν•©λ‹ˆλ‹€.

κ°„λ‹¨ν•œ ν•΄κ²° 방법이 μžˆμŠ΅λ‹ˆλ‹€. νŠΉμ • Python 버전을 ν¬ν•¨ν•˜λ„λ‘ 경둜λ₯Ό μ—…λ°μ΄νŠΈν•˜κΈ°λ§Œ ν•˜λ©΄ λ©λ‹ˆλ‹€. 예:

set "PATH=C:\Program Files (x86)\Python36-32;%PATH%"

이 λ¬Έμ œλŠ” 졜근 ν™œλ™μ΄ μ—†μ—ˆκΈ° λ•Œλ¬Έμ— μžλ™μœΌλ‘œ 였래된 κ²ƒμœΌλ‘œ ν‘œμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 더 μ΄μƒμ˜ ν™œλ™μ΄ μ—†μœΌλ©΄ νμ‡„λ©λ‹ˆλ‹€. 계속 열어두고 μ‹Άλ‹€λ©΄ λŒ“κΈ€μ„ μΆ”κ°€ν•˜μ„Έμš”. κ·€ν•˜μ˜ 기여에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰