python pip: buộc cài đặt bỏ qua các phụ thuộc


126

Có cách nào để buộc cài đặt gói pip python bỏ qua tất cả các phụ thuộc không thể thỏa mãn không?

(Tôi không quan tâm làm như vậy "sai" như thế nào, tôi chỉ cần làm điều đó, bỏ mọi logic và suy luận sang một bên ...)

Câu trả lời:


201

pip có --no-dependenciescông tắc. Bạn nên sử dụng cái đó.

Để biết thêm thông tin, hãy chạy pip install -h, nơi bạn sẽ thấy dòng này:

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

ok, cảm ơn vì làm phiền đến câu trả lời ... xin lỗi, dunno làm thế nào tôi bị mất rằng, tôi nên đã chắc chắn RTFM ...
NeuronQ

19
làm thế nào để vượt qua điều này trong một tệp tin request.txt?
Austin

2
Để chạy với một tệp pip install --no-deps -r requirements.txt
Graham Place,

Bất cứ điều gì như thế này để ngăn cài đặt các gói được đề xuất như với apt-get install --no-install-recommends?
Connor

1
@Connor không tương đương với "gói được đề xuất" trong bất kỳ công cụ đóng gói Python tiêu chuẩn nào: distutils, setuptools, pip. Setuptools (và pip) có "phần bổ sung", nhưng chúng phải được người dùng lựa chọn và cài đặt một cách rõ ràng.
đánh bóng

6

Khi tôi đang thử cài đặt librosagói với pip( pip install librosa), lỗi này đã xuất hiện:

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.

Tôi đã cố gắng gỡ bỏ llvmlite, nhưng pip uninstallkhông thể gỡ bỏ nó. Vì vậy, tôi đã sử dụng khả năng ignorecủa pipcủa mã này:

pip install librosa --ignore-installed llvmlite

Thật vậy, bạn có thể sử dụng quy tắc này để bỏ qua một gói mà bạn không muốn xem xét:

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

1
đây không phải là chính xác những gì op yêu cầu. theo man page -I, --ignore-install Bỏ qua các gói đã cài đặt (thay vào đó cài đặt lại). cờ này sẽ rõ ràng sẽ cài đặt lại các gói được chỉ định, ngay cả khi chúng đã được cài đặt
madmuffin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.