Virtualenv Komutu Bulunamadı


207

Ben alamadım virtualenvçeşitli girişimlerine rağmen çalışmak. virtualenvMAC OS X'e aşağıdakileri kullanarak yükledim :

pip install virtualenv

ve PATHiçine de ekledim .bash_profile. virtualenvKomutu her çalıştırmaya çalıştığımda , şunu döndürür:

-bash: virtualenv: command not found

Her pip install virtualenvkoşuşumda:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

Ben mac içinde, anlamak virtualenvdoğru monte edilmelidir

/usr/local/bin

virtualenvGerçekten de yüklenir /usr/local/bin, ancak çalıştırmayı denediğinizde ne zaman virtualenvkomutu, komut bulunamadı. Ayrıca virtualenvdizinde komutu çalıştırmak için denedim /usr/local/binve bana aynı sonucu verir:

-bash: virtualenv: command not found

Bunlar .bash_profile dosyama eklediğim PATH'ler

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

Bunun için herhangi bir geçici çözüm var mı? Neden böyle?


1
/ Usr / local / bin içindeki virtualenv yürütülebilir dosyasına bir sembolik bağlantı eklemeyi deneyin
Justin Fay

Symlink'i nerede oluşturmalıyım? Virtualenv @justinfay kullanmak istediğiniz dizine bir symlink eklemeye çalışmamıza rağmen hala çalışmıyor
Arial

2
yukarıdaki yollara bakmak gibi bir şey olabilir, komutta son yolu gerçek sanal yürütülebilir yürütülebilir yol ile değiştirin:$ ln -s /usr/bin/virtualenv /Library/Framework/Python.framework/Version/2.7/lib/site-packages/virtualenv/virtualenv.py
Justin Fay

2
benim için işe yarayan bir symlink eklemek olduln -s /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv
Aliza

Lubuntu'da çalışmıyor
c24b

Yanıtlar:


336

İle yüklediyseniz

pip install virtualenv

Koşman gerek

sudo /usr/bin/easy_install virtualenv

hangi koyar /usr/local/bin/.

Yukarıdaki dizin varsayılan olarak sizin PATH; aksi takdirde .zshrc(veya. bashrc)


1
yardım @nguns her zaman memnun
Tal Avissar

AWS EC2 örneğinde Amazon Linux, Let's Encrypt's'i deniyorsanız certbot, bu çözümü deneyin. Virtualenv sorunumu çözen tek öneri buydu.
emrahgunduz

2
Sen en iyisin!
leon wu

6
çıktısudo: /usr/bin/easy_install: command not found
Ced

2
Bunun için teşekkür ederim - ama keşke burada büyücülüğün ne işe yaradığını bilsem - normal pip'in yapmadığı "easy_install" ne yapar? ie Bu neden çalışıyor?
Thomas Kimber

153

Aynı sorunla karşı karşıya kaldım ve bunu şu şekilde çözdüm:

  1. Sorun benimle pip üzerinden virtualenv'i normal bir kullanıcı olarak (kök değil) yüklediğim için oluştu. pip paketleri dizine kurdu~/.local/lib/pythonX.X/site-packages
  2. Pip'i root veya yönetici ayrıcalıklarıyla (sudo) çalıştırdığımda, paketleri kurdu /usr/lib/pythonX.X/dist-packages. Bu yol sizin için farklı olabilir.
  3. virtualenv komutu yalnızca ikinci senaryoda tanınır
  4. Bu nedenle, sorunu çözmek için yapın pip uninstall virtualenvve ardından yeniden yükleyin sudo pip install virtualenv(veya kök olarak yükleyin)

8
Çözümünüzü takip ettim ve "... sudo ile pip çalıştırıyorsanız, sudo'nun -H bayrağını isteyebilirsiniz" mesajını aldım. Sonunda sudo -H pip install virtualenv benim için işi yaptı (OS X'te), teşekkür ederim
smudo78

1
makinenizde kök yoksa ne olur?
user5359531

Sorun çözüldü. Bunun yerine küresel dirence girebilir sanırım --user.

Bu sorun, pip'in kendisi ~ / .local / SOME_PATH dizinine yüklendiğinde de oluşur. Ben cpher şeyi ed site-packagesdir içine /usr/lib/pythonx.x/site-packagesve rm -rforijinal dizin ed.
yoon

47

En basit cevap. Sadece:

pip uninstall virtualenv

ve sonra:

pip install virtualenv

Veya sudobu durumda virtualenv'i şu şekilde yüklediniz :

pip install --user virtualenv

Vaov! Bu benim için hile yaptı. Bu pyenvarada kullanıyorum
race_carr

Bu demlemek kullanarak Mac OS X için gitmek için bir yoldur.
TCSGrad

Haftalardır bununla savaşıyorum ve bir python projesi üzerinde çalışmak için sınırlı zamanımı engelliyor ve bu benim için Mac'te çalışmak için tek çözümdü. Teşekkür ederim!
HellaDev

37

Ubuntu 18.04 LTS'de de aynı hatayla karşılaştım. Aşağıdaki komut çalıştı:

sudo apt-get install python-virtualenv

1
brew install python-virtualenvmevcut değil
Leonard

Benim 18.04 üzerinde bir cazibe gibi çalıştı, Teşekkürler
Nischaya Sharma

aptBir halefi olarak terfi etmek için oy verildi apt-get.
greybeard

24

Mac OS X El Capitan'da da aynı sorunu yaşadım .

Ben yüklendiğinde virtualenvböyle sudo pip3 install virtualenvben yoktu virtualenvbenim komut satırı altında.

Bu adımları şu adımları izleyerek çözdüm:

  1. Önceki yüklemeleri kaldırın.
  2. virtualenvKurulumdan önce arayarak süper kullanıcı hesabına geçinsudo su
  3. Yükleme virtualenvarayarakpip3 install virtualenv
  4. Nihayet erişmek mümkün olmalıdır virtualenvhem userve super userhesabına.

15

Sorunu çöz

--verboseBayrakla yüklemeyi deneyin

pip install virtualenv --verbose

Çıktı şöyle görünecek

  ..
  Using cached virtualenv-15.1.0-py2.py3-none-any.whl
  Downloading from URL https://pypi.python.org/packages/6f/86/3dc328ee7b1a6419ebfac7896d882fba83c48e3561d22ddddf38294d3e83/virtualenv-15.1.0-py2.py3-none-any.whl#md5=aa7e5b86cc8cdb99794c4b99e8d670f3 (from https://pypi.python.org/simple/virtualenv/)
Installing collected packages: virtualenv

  changing mode of /home/manos/.local/bin/virtualenv to 755
Successfully installed virtualenv-15.1.0
Cleaning up...

Çıktıdan kurulduğunu görebiliriz, bu /home/manos/.local/bin/virtualenvyüzden PATH'ın bunu içerdiğinden emin olalım.

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Benim durumumda bunun /home/manos/.local/bintamamen eksik olduğunu açıkça görebiliyoruz ve bu yüzden kabuk programı bulamıyor.

Çözümler

Bunu birçok şekilde çözebiliriz:

  1. Pip seçenekleri (tavsiye edilmez) ile uğraşarak doğrudan belirli bir dizine kurabiliriz.
  2. /usr/local/binVeya üzerinde uygun semboller oluşturun .
  3. /home/manos/.local/binPATH öğesine ekleyin .
  4. Doğrudan yüklemek için sudo olarak yükle /usr/local/bin

Son iki seçenek muhtemelen en mantıklısıdır. Son çözüm en basit olanıdır, bu yüzden sadece çözüm 3'ü göstereceğim.

Bunu ~ / .profile dosyasına ekleyin:

PATH="$PATH:$HOME/.local/bin"

Oturumu kapatıp tekrar açın ve çalışması gerekir.


1
Bu mükemmel çalıştı. Ayrıntılı açıklama için kabul edilen cevap ve +1 olmalıdır
David The Programmer


11

Benim durumumda, pip show virtualenvvirtualenv paketi hakkında bilgi almak için koştum . Buna benzer görüneceğim ve paketin yerini de göstereceğim:

user@machine:~$ pip show virtualenv
Name: virtualenv
Version: 16.2.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: ianb@colorstudy.com
License: MIT
Location: /home/user/.local/lib/python3.6/site-packages
Requires: setuptools

Bundan konumun bir .localkısmını bu durumda olan parçaya kadar tutun /home/user/.local/. Virtualenv komutunu altında bulabilirsiniz /home/user/.local/bin/virtualenv.

Daha sonra gibi komutları çalıştırabilirsiniz /home/user/.local/bin/virtualenv newvirtualenv.


10

Aynı sorunu yaşadım. Çalıştırmak için aşağıdaki adımları kullandım

sudo pip uninstall virtualenv

sudo -H pip install virtualenv

İşte bu. Çalışmaya başladı.

Kullanımı sudo -H----> sudo -H: ayarlanan HOMEhedef kullanıcının ev dizinine değişken.


1
Benim için tam olarak aynı sorunu çözüyor ... neden çözüm olarak kontrol edilmiyor?
manuele

9

Her koşuşunda alın pip installdediğini söyledin Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages. Yapmanız gereken şudur:

  1. Dizini Değiştir (virtualenv.py dosyasının bulunduğu dizine gidin) cd /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
  2. Eğer bir lsyaparsanız betiğin orada olduğunu göreceksinizvirtualenv.py
  3. Komut dosyasını şu şekilde çalıştırın: python virtualenv.py --distribute /the/path/at/which/you/want/the/new/venv/at theNameOfTheNewVirtualEnv

Bu yardımcı olur umarım. Benim tavsiyem venvleri daha fazla araştırmak olurdu. İşte iyi bir kaynak: https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/


8

Sorunlarım vardı, çünkü python-virtualenv paketini yüklemek için apt kullandım. Çalışması için bu paketi kaldırmak apt-get remove python-virtualenvve yüklemek zorunda kaldım pip install virtualenv.


1
Bu da şu soruyu bırakıyor: Şeytan neden python3-virtualenv paketim bozuk?
Dmitri DB

6

virtualenvYürütülebilir olduğundan emin olun .

Eğer virtualenvtam yolunu (koşu, bulunmazsa /usr/local/bin/virtualenvçalışması gerekir).


5

Bence probleminiz basit bir sembolik link kullanılarak çözülebilir , fakat yanlış dosyaya sembolik link oluşturuyorsunuz . Bildiğim kadarıyla virtualenv'in kurulu olduğunu /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv(Python sürümünüzün numaralarını değiştirebilirsiniz), böylece sembolik bağlantı oluşturma komutunun olması gerekir:

ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv

sym bağlantı kurma tüm yapılması gereken oldu. teşekkür ederim.
Kirby

5

Ubuntu 18.4'te pip ile AWS kurulumunda düzgün çalışmıyor. Apt-get install kullanarak sorun benim için çözüldü.

sudo apt-get install python-virtualenv

ve kontrol etmek

virtualenv --version

4

Aynı sorun: Ben de yaptım pip uninstall virtualenv O zaman pip install virtualenv

pip install virtualenv --user

Önbelleğe kullanma Virtualenv Toplama https://files.pythonhosted.org/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl VIRTUALENV: Toplanan paketleri kurma

Sonra bunu anladım:

Virtualenv komut dosyası, PATH üzerinde olmayan '/Users/brahim/Library/Python/2.7/bin' içine kurulur. Bu dizini PATH dizinine eklemeyi düşünün veya bu uyarıyı bastırmayı tercih ediyorsanız --no-warn-script-location kullanın.

nerede kurulduğunu ve almak için ne yapılacağını açıkça söylüyor


2

Linux kullanıyorsanız, terminalinizi açın ve virtualenv yazın ve sekme tuşuyla otomatik tamamlayın . Otomatik tamamlama yoksa, şu anda sisteminize virtualenv yükleyin:

mycomp$sudo apt-get install virtualenv
//if you're already super user.
mycomp#apt-get install virtualenv

Artık projenizi oluşturmak istediğiniz yere gidebilir ve şunları yapabilirsiniz:

myprj$pip3 install virtualenv    
//to install python 3.5 and above  
myprj$virtualenv venv --python=python3.5  
//to activate virtualenv  
(venv)myprj$source venv/bin/activate  
(venv)myprj$deactivate

Python 3.7 sürümüne geçtim. Virtualenv yüklemeye çalıştım, her zaman "Hata: Virtualenv gereksinimini karşılayan bir sürüm bulunamadı (sürümlerden: none)". Belli bir python 3.x sürümünden kurulu sanalenv ile birlikte gelen bir yerde okudum, ancak sanal bir ortam yaratmaya çalışırken basit, işe yaramadı, virtualenv komutunu bilmediği bir hata döndürür. Ama cevabınızdaki şu komutla çalıştı: "virtualenv venv --python = python3.7". Daha önce başka bir şey yapılmadı. Başka birine yardım etmesi durumunda. MacOS ortamı.
CarmenA

1

bu ubuntu 18 ve üstü sürümlerde çalışır (önceki sürümlerde test edilmemiştir):

sudo apt install python3-virtualenv

0

Sanal ortamı ayarlamak için bu temel adımları izleyin

sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/get-pip.py ~/.cache/pip

güncellememiz gerek ~/.bashrc

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

~/.bashrcDosya yeni bir terminal başlatmak zaman Bash çalıştığını basitçe bir kabuk. Normalde bu dosyayı çeşitli yapılandırmaları ayarlamak için kullanırsınız. Bu durumda, WORKON_HOME Python sanal ortamlarımızın yaşadığı dizine işaret etmek için adlandırılan bir ortam değişkeni ayarlıyoruz . Daha sonra virtualenvwrapper'dan gerekli yapılandırmaları yükleriz.

~/.bashrcDosyanızı güncellemek için sadece standart bir metin düzenleyici kullanın, nano muhtemelen kullanımı en kolay olanıdır. Daha basit bir çözüm cat komutunu kullanmak ve editörlerden tamamen kaçınmaktır:

echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc

~ / .Bashrc dosyamızı düzenledikten sonra değişiklikleri yeniden yüklememiz gerekir:

source ~/.bashrc

Şimdi virtualenv ve virtualenvwrapper'ı yüklediğimize göre, bir sonraki adım aslında Python sanal ortamını oluşturmaktır - bunu mkvirtualenv komutunu kullanarak yapıyoruz.

mkvirtualenv YOURENV

0

Benim için bu yola kuruldu (MacOS'ta python 2.7): $ HOME / Library / Python / 2.7 / bin


0

Angela Yu'nun çevrimiçi iOS kursunu yapıyorum ve aynı problemi alıyordum ve koşmaya çalıştığımda 13 numaralı izin reddedildi. virtualenv --python=/{myPath} {newVirtualEnvName}

Ben çözdüm:

  1. sudo kullanıcısına geçme sudo su
  2. Hedef klasörüme (yeni sanal env'imin yaşamasını istediğim yer) yani. / Users / muUserName / Ortamları /
  3. komutunu çalıştır, python -m virtualenv python27burada python27 yeni sanal ortamımın adı
  4. Yukarıdaki klasörü oluşturulur pathon27 benim de Ortamları klasörüne, sonra çalıştırmak mümkün oldu source python27/bin/activatebenim VIRTUALENV başlatmak için

0

Basit bir cevap ben bir değil gibi bir sudo kullanıcı değilseniz. Bin klasörünüzün ( /home/myusername/.local/bin) yolunu eklemeniz gerekir. Yani temelde komut satırı bu yolun hangi yazdığınız komut olduğunu arar.

export PATH=/home/b18150/.local/bin:/usr/bin:/bin

burada local/binönce /usr/binve sonra arayacaktır /bin.


0

Uzun zamandır aynı problemi yaşadım. Bu iki komutu çalıştırarak çözdüm, ilk önce env'yi etkinleştirmektir:

python3 -m pip install virtualenv
python3 -m virtualenv yourenvname

Ben kullanıyorum o Not python3, sadece değiştirebilirsiniz pythoneğer python3başarısız olur. Teşekkürler.


-3
apt update
apt upgrade
apt install ufw python virtualenv git unzip pv

3 komut ve her şey çalışıyor!


Soru mac OS için, hayırapt
Matteo

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.