Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

Python - ImportError: No module named pip._internal.cli.main 두 번째 이야기

전에 써 둔 것과는 달리,

Python - ImportError: No module named pip._internal.cli.main
; https://www.sysnet.pe.kr/2/0/12767

이번에는 virtualenv에서 발생한 것인데,

(myapp) testusr@TESTPC:~/pyenv$ pip
Traceback (most recent call last):
  File "/home/testusr/pyenv/myapp/bin/pip", line 5, in <module>
    from pip._internal.cli.main import main
ImportError: No module named pip._internal.cli.main

다음과 같이 python3 버전으로 잘 연결이 되어 있습니다.

(myapp) testusr@TESTPC:~/pyenv$ which pip
/home/testusr/pyenv/myapp/bin/pip

(myapp) testusr@TESTPC:~/pyenv$ cat /home/testusr/pyenv/myapp/bin/pip
#!/home/testusr/pyenv/myapp/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

아... 진짜 리눅스 환경은 왜 이렇게 친해질 수가 없는지... ^^;;;

암튼, 찾다 보니 python3의 출력이 좀 이상합니다.

(myapp) testusr@TESTPC:~/pyenv$ python3 -V
Python 2.7.18

왜 python3라는 이름을 갖고 있으면서 2.7.x 출력을 하게 되었는지... ^^; (그래요, 제가 뭔가 잘못한 것이 있을 것입니다.)

일단, vitualenv를 삭제하고 다시 설치 후,

$ pip uninstall virtualenv
$ pip install virtualenv

새롭게 가상 환경을 만들었더니,

~$ mkdir pyenv
~$ cd pyenv
~/pyenv$ virtualenv myapp
created virtual environment CPython3.8.10.final.0-64 in 346ms
  creator CPython3Posix(dest=/home/testusr/pyenv/myapp, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/testusr/.local/share/virtualenv)
    added seed packages: pip==21.2.3, setuptools==57.4.0, wheel==0.37.0
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator

출력에 CPython3.8.10.x으로 나온 것을 보아 뭔가 느낌이 좋습니다. ^^ 실제로 문제도 해결되었고.

~/pyenv$ source ./myapp/bin/activate
(myapp) testusr@TESTPC:~/pyenv$ python3 -V
Python 3.8.10
(myapp) testusr@TESTPC:~/pyenv$ python -V
Python 3.8.10

(myapp) testusr@TESTPC:~/pyenv$ pip install Django
Collecting Django
  Using cached Django-3.2.6-py3-none-any.whl (7.9 MB)
Collecting sqlparse>=0.2.2
  Using cached sqlparse-0.4.1-py3-none-any.whl (42 kB)
Collecting pytz
  Using cached pytz-2021.1-py2.py3-none-any.whl (510 kB)
Collecting asgiref<4,>=3.3.2
  Using cached asgiref-3.4.1-py3-none-any.whl (25 kB)
Installing collected packages: sqlparse, pytz, asgiref, Django
Successfully installed Django-3.2.6 asgiref-3.4.1 pytz-2021.1 sqlparse-0.4.1

(myapp) testusr@TESTPC:~/pyenv$ pip install uwsgi
Collecting uwsgi
  Using cached uWSGI-2.0.19.1-cp38-cp38-linux_x86_64.whl
Installing collected packages: uwsgi
Successfully installed uwsgi-2.0.19.1




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 8/11/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 151  152  153  154  [155]  156  157  158  159  160  161  162  163  164  165  ...
NoWriterDateCnt.TitleFile(s)
1269정성태3/27/201241354오류 유형: 149. ODP.NET 오류 - The provider is not compatible with the version of Oracle client
1268정성태3/27/201237318오류 유형: 148. WCF svc 호출 시 HTTP Error 404.17 - Not Found [1]
1267정성태3/16/201235996.NET Framework: 314. C++의 inline asm 사용을 .NET으로 포팅하는 방법 [1]파일 다운로드1
1266정성태3/14/201238624개발 환경 구성: 149. RAID 1 구성 시 하드 디스크 장애 발생 해결에 대한 경험담
1265정성태3/13/201228902VC++: 61. 아이태니엄(IA64: Itanium) 에서 겪은 C++ 포인터 연산 문제 [2]
1264정성태3/10/201248796.NET Framework: 313. WELL512 난수 발생 알고리즘 - C# [5]파일 다운로드1
1263정성태3/9/201227064개발 환경 구성: 148. tinyget 사용법
1262정성태3/8/201247786개발 환경 구성: 147. .keystore 파일에 저장된 개인키 추출 방법과 인증기관으로부터 온 공개키를 합친 pfx 파일 만드는 방법 [1]
1261정성태3/7/201228086Phone: 2. 개발자용 윈도우 폰 7 기기 등록하는 방법
1260정성태3/6/201228749Phone: 1. 윈도폰 7 개발자 (회사) 등록하는 방법 [3]
1259정성태3/4/201240170Windows: 57. 새로 추가된 네트워크 커널 디버깅 및 PowerShell 3.0 [1]
1258정성태3/3/201241644개발 환경 구성: 146. SQL Server 2012에 포함된 LocalDB 기능 소개 [3]파일 다운로드1
1257정성태3/3/201230204.NET Framework: 312. Native 스레드와 Managed 스레드 개체의 상태 관계 [1]파일 다운로드1
1256정성태3/3/201233333Math: 5. Euler's totient function - C#파일 다운로드1
1255정성태3/3/201235534Math: 4. 소수 판정 및 소인수 분해 소스 코드 - C# [1]파일 다운로드1
1254정성태3/1/201231095Windows: 56. Windows 8 Consumer Preview를 사용해 보고... [1]
1253정성태3/1/201232330VS.NET IDE: 71. Visual Studio 11 Ultimate 베타 설치 [3]
1252정성태3/1/201229665Windows: 55. 윈도우 8 베타 설치 과정 [1]
1251정성태2/27/201233931VC++: 60. C/C++ Native 스레드 콜 스택 덤프를 얻는 공개 라이브러리 [2]파일 다운로드1
1250정성태2/27/201235870VC++: 59. C/C++ 프로젝트 빌드 속도 개선 - UnityBuild를 아세요? [3]
1249정성태2/26/201236166.NET Framework: 311. .NET 스레드 콜 스택 덤프 (5) - ICorDebug 인터페이스 사용법 [2]파일 다운로드3
1248정성태2/25/201246877.NET Framework: 310. C#의 Shift 비트 연산 정리파일 다운로드1
1247정성태2/25/201229546.NET Framework: 309. .NET 응용 프로그램에 기본 생성되는 스레드들에 대한 탐구 [1]파일 다운로드1
1246정성태2/25/201228977개발 환경 구성: 145. 한영 변환은 되지만, 정작 한글 입력이 안되는 경우
1245정성태2/25/201240357개발 환경 구성: 144. 윈도우에서도 유닉스처럼 명령행으로 원격 접속하는 방법
1244정성태2/24/201237335.NET Framework: 308. .NET System.Threading.Thread 개체에서 Native Thread Id를 구할 수 있을까? [1]파일 다운로드1
... 151  152  153  154  [155]  156  157  158  159  160  161  162  163  164  165  ...