python pip: bağımlılıkları yok sayarak yüklemeye zorla


126

Bir pip python paketini, tatmin edilemeyen tüm bağımlılıklarını görmezden gelerek kurmaya zorlamanın bir yolu var mı?

(Bunu yapmanın ne kadar "yanlış" olduğu umrumda değil, sadece yapmam gerekiyor, herhangi bir mantık ve mantık bir yana ...)

Yanıtlar:


201

pip'in bir --no-dependenciesanahtarı var. Bunu kullanmalısın.

Daha fazla bilgi için, pip install -hbu satırı göreceğiniz yerde çalıştırın :

--no-deps, --no-dependencies
                        Ignore package dependencies

tamam, cevap verdiğiniz için teşekkürler ... pardon, bunu nasıl kaçırdım bilmiyorum, kesinlikle rtfm olmalıydım ...
NeuronQ

19
bunu bir requirements.txt dosyasında nasıl iletebilirim?
Austin

2
Requirements.txt ile çalıştırmak için:pip install --no-deps -r requirements.txt
Graham Place

İle olduğu gibi önerilen paketlerin yüklenmesini önlemek için buna benzer bir şey var apt-get install --no-install-recommendsmı?
Connor

1
@Connor, standart Python paketleme araçlarının hiçbirinde "önerilen paketlerin" eşdeğeri yoktur: dağıtımlar, kurulum araçları, pip. Setuptools (ve pip) "ekstralara" sahiptir, ancak bunlar kullanıcı tarafından açıkça seçilmeli ve kurulmalıdır.
shadowtalker

6

librosaPaketi pip( pip install librosa) ile yüklemeyi denediğimde şu hata ortaya çıktı:

ERROR: Cannot uninstall 'llvmlite'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

Kaldırmaya çalıştım llvmliteama pip uninstallçıkaramadım. Yani, yeteneği kullanılan ignoreait pipbu kodla:

pip install librosa --ignore-installed llvmlite

Aslında, dikkate almak istemediğiniz bir paketi görmezden gelmek için bu kuralı kullanabilirsiniz:

pip install {package you want to install} --ignore-installed {installed package you don't want to consider}

1
bu tam olarak operasyonun istediği şey değil. man sayfasına göre -I, --ignore-installed Kurulu paketleri göz ardı edin (bunun yerine yeniden yükleme). bu bayrak, önceden yüklenmiş olsalar bile belirtilen paketleri yeniden
yükleyecektir
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.