Nice programing

pip 설치 /usr/local/opt/python/bin/python2.7 : 잘못된 인터프리터 : 해당 파일 또는 디렉토리 없음

nicepro 2020. 10. 17. 12:20
반응형

pip 설치 /usr/local/opt/python/bin/python2.7 : 잘못된 인터프리터 : 해당 파일 또는 디렉토리 없음


나는 거래가 무엇인지 모르지만 아무데도 가지 않는 스택 오버플로 솔루션을 따르고 있습니다. 제발 도와 주 시겠어요?

  Monas-MacBook-Pro:CS764 mona$ sudo python get-pip.py
    The directory '/Users/mona/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
    The directory '/Users/mona/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
    /tmp/tmpbSjX8k/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
    Collecting pip
      Downloading pip-7.1.0-py2.py3-none-any.whl (1.1MB)
        100% |████████████████████████████████| 1.1MB 181kB/s 
    Installing collected packages: pip
      Found existing installation: pip 1.4.1
        Uninstalling pip-1.4.1:
          Successfully uninstalled pip-1.4.1
    Successfully installed pip-7.1.0
    Monas-MacBook-Pro:CS764 mona$ pip --version
    -bash: /usr/local/bin/pip: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory

home-brew를 사용하여 OS X 10.10에 2.7을 설치했는데 새 설치에 sym 링크가 누락되었습니다. 나는 달렸다

brew link --overwrite python

Homebrew에서 파이썬을 심볼릭 링크하는 방법에서 언급했듯이 ? 그리고 그것은 문제를 해결했습니다.


두 개의 python 설치 또는 두 개의 pip 설치가 있고 그중 하나가 부분적으로 제거되었다고 생각합니다.

왜 사용 sudo합니까? 이상적으로는 루트를 사용하는 대신 사용자 계정에서 모든 것을 설치하고 실행할 수 있어야합니다. 루트와 로컬 계정을 함께 사용하면 권한 문제가 발생할 가능성이 더 높습니다 (예 : "부모 디렉토리는 현재 사용자가 소유하지 않습니다"에 대한 경고 참조).

이것을 실행하면 무엇을 얻습니까?

$ head -n1 /usr/local/bin/pip

이것은 어떤 파이썬 바이너리 pip가 사용하려고 하는지 보여줄 것입니다 . 가리키는 /usr/local/opt/python/bin/python2.7경우 다음을 실행하십시오.

$ ls -al /usr/local/opt/python/bin/python2.7

"No such file or directory"라고 표시되면 pip는 제거 된 python 바이너리를 사용하려고합니다.

다음으로 시도해보십시오.

$ which python
$ which python2.7

실제로 작동하는 파이썬 바이너리의 경로를 확인합니다.

pip가 어딘가에 성공적으로 설치된 것처럼 보이므로 /usr/local/bin/pip.NET에서 더 높은 이전 pip 설치의 일부일 수 있습니다 PATH. 이를 테스트하기 위해 다음 pip과 같이 작동하지 않는 바이너리를 이동해 볼 수 있습니다 (필요할 수 있음 sudo).

$ mv /usr/local/bin/pip /usr/local/bin/pip.old

그런 다음 pip --version명령을 다시 실행 하십시오. 바라건대 올바른 버전을 선택하고 성공적으로 실행되기를 바랍니다.


OSX 및 그 변형의 유일한 솔루션입니다.

ln -s /usr/local/bin/python /usr/local/opt/python/bin/python2.7

핍 고정

이 오류의 경우 :

~/Library/Python/2.7/bin/pip: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory`

이 문제의 원인은 pip에 하드 코딩 된 잘못된 파이썬 경로입니다 (즉, $ PATH를 변경해도 수정되지 않음을 의미합니다). 해당 경로는 더 이상 최신 버전의 pip에서 하드 코딩되지 않으므로 작동 해야하는 솔루션 은 다음과 같습니다.

pip install --upgrade pip

그러나 물론이 명령은 pip를 사용하므로 동일한 오류로 실패합니다.

이 혼란에서 스스로를 부트 스트랩하는 방법 :

  1. 운영 which pip
  2. 텍스트 편집기에서 해당 파일을 엽니 다.
  3. 첫 번째 줄을 #!/usr/local/opt/python/bin/python2.7에서 예 #!/usr/local/opt/python2/bin/python2.7(경로에있는 python2 참고) 또는 컴퓨터에서 작동하는 파이썬 인터프리터의 경로로 변경하십시오.
  4. 자, pip install --upgrade pip(이것은 당신의 해킹을 덮어 쓰고 인터프리터 문제를 해결 해야하는 최신 버전에서 pip를 작동시킵니다)

virtualenv 수정

나를 위해 먼저 virtualenv에서 동일한 문제가 발생 하여이 문제를 발견했습니다.

~/Library/Python/2.7/bin/virtualenv: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory`

여기서 해결책은 실행하는 것입니다.

pip uninstall virtualenv
pip install virtualenv

해당 명령을 실행하면 pip에서 동일한 오류가 발생하면 위를 참조하십시오.


설치에 sudo를 사용하여 동일한 오류를 범했습니다. (죄송합니다)

brew install python
brew linkapps python
brew link --overwrite python 

이로 인해 모든 것이 정상으로 돌아 왔습니다.


비슷한 문제가있었습니다. 기본적으로 pip는 잘못된 경로 (이전 설치 경로) 또는 python을 찾고있었습니다. 다음 솔루션이 저에게 효과적이었습니다.

  • 파이썬 경로가 어디에 있는지 확인했습니다 (try which python)
  • pip 파일 ( /usr/local/bin/pip2.7/usr/local/bin/pip) 의 첫 번째 줄을 확인했습니다 . 줄은 파이썬 경로에 대한 올바른 경로를 명시해야합니다. 제 경우에는 그렇지 않았습니다. 나는 그것을 수정했고 이제는 잘 작동합니다.

Mac OSX에 Python 2와 3을 모두 설치했기 때문에 모든 종류의 오류가 발생했습니다.

내 python2.7 파일 (/usr/local/bin/python2.7)의 위치를 ​​찾는 데 사용했습니다.

which python2.7

그런 다음 실제 python2.7 설치 위치를 스크립트가 예상 한 위치와 심볼릭 링크했습니다.

ln -s /usr/local/bin/python2.7 /usr/local/opt/python/bin/python2.7

누구에게나 도움이되는 경우이 다른 질문에서 언급 한 솔루션은 업그레이드 후 오늘 pip가 작동을 멈췄을 때 저에게 효과적이었습니다. 업그레이드 후 Pip이 끊어졌습니다.

이전에 캐시 된 위치가 변경 될 때 문제인 것 같으므로 다음 명령으로 캐시를 새로 고칠 수 있습니다.

hash -r

To simplify to operation, we can use the below command to reinstall version 2:

brew install python@2

Then on my mac, it looks as below:

▶ python -V
Python 2.7.10

▶ python2 -V
Python 2.7.14

▶ python3 -V
Python 3.6.5

▶ pip2 -V
pip 9.0.3 from /usr/local/lib/python2.7/site-packages (python 2.7)

▶ pip3 -V
pip 9.0.3 from /usr/local/lib/python3.6/site-packages (python 3.6)

▶ pip --version
pip 9.0.3 from /usr/local/lib/python2.7/site-packages (python 2.7)

I had the same issue. I have both Python 2.7 & 3.6 installed. Python 2.7 had virtualenv working, but after installing Python3, virtualenv kept looking for version 2.7 and couldn't find it. Doing pip install virtualenv installed the Python3 version of virtualenv.

Then, for each command, if I want to use Python2, I would use virtualenv --python=python2.7 somecommand


I had the same issue, virtualenv was pointing to an old python path. Fixing the path resolved the issue:

$ virtualenv -p python2.7 env
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory

$ which python2.7
/opt/local/bin/python2.7

# needed to change to correct python path
$ head  /usr/local/bin/virtualenv
#!/usr/local/opt/python/bin/python2.7 <<<< REMOVED THIS LINE
#!/opt/local/bin/python2.7 <<<<< REPLACED WITH CORRECT PATH

# now it works:
$ virtualenv -p python2.7 env
Running virtualenv with interpreter /opt/local/bin/python2.7
New python executable in env/bin/python
Installing setuptools, pip...done.

In my case, I decided to remove the homebrew python installation from my mac as I already had two other versions of python installed on my mac through MacPorts. This caused the error message.

Reinstalling python through brew solved my issue.


I got same problem. If I run brew link --overwrite python2. There was still zsh: /usr/local/bin//fab: bad interpreter: /usr/local/opt/python/bin/python2.7: no such file or directory.

cd /usr/local/opt/
mv python2 python

Solved it! Now we can use python2 version fabric.

=== 2018/07/25 updated

There is convinient way to use python2 version fab when your os python linked to python3. .sh for your command.

# fab python2
cd /usr/local/opt
rm python
ln -s python2 python

# use the fab cli
...

# link to python3
cd /usr/local/opt
rm python
ln -s python3 python

Hope this helps.


Editing the first line of this file worked to me:

MBP-de-Jose:~ josejunior$ which python3

/usr/local/Cellar/python/3.7.3/bin/python3

MBP-de-Jose:~ josejunior$

before

#!/usr/local/opt/python/bin/python3.7

after

#!/usr/local/Cellar/python/3.7.3/bin/python3

All you need to do is... close the terminal window and reopen new one to fix this issue.

The issue is, new python path is not added to bashrc(Either source or new terminal window would help).


sudo /usr/bin/easy_install pip

this command worked out for me

참고URL : https://stackoverflow.com/questions/31768128/pip-installation-usr-local-opt-python-bin-python2-7-bad-interpreter-no-such-f

반응형