python pip: forzar la instalación ignorando las dependencias


126

¿Hay alguna forma de forzar la instalación de un paquete pip python ignorando todas sus dependencias que no se pueden satisfacer?

(No me importa lo "incorrecto" que sea hacerlo, solo necesito hacerlo, dejando de lado la lógica y el razonamiento ...)

Respuestas:


201

pip tiene un --no-dependenciesinterruptor. Deberías usar eso.

Para obtener más información, ejecute pip install -h, donde verá esta línea:

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

ok, gracias por molestarse en responder ... lo siento, no sé cómo me perdí eso, definitivamente debería haberlo hecho rtfm ...
NeuronQ

19
¿Cómo pasar esto dentro de un archivo requirements.txt?
Austin

2
Para ejecutar con un requirements.txt, sería:pip install --no-deps -r requirements.txt
Graham Place

¿Algo como esto para evitar la instalación de paquetes recomendados como con apt-get install --no-install-recommends?
Connor

1
@Connor no hay equivalente a "paquetes recomendados" en ninguna de las herramientas de empaquetado estándar de Python: distutils, setuptools, pip. Setuptools (y pip) tiene "extras", pero el usuario debe seleccionarlos e instalarlos explícitamente.
Shadowtalker

6

Cuando intentaba instalar el librosapaquete con pip( pip install librosa), apareció este error:

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.

Traté de eliminarlo llvmlite, pero pip uninstallno pude eliminarlo. Por lo tanto, he utilizado la capacidad de ignorede pipeste código:

pip install librosa --ignore-installed llvmlite

De hecho, puede usar esta regla para ignorar un paquete que no desea considerar:

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

1
esto no es exactamente lo que pidió la operación. de acuerdo con la página de manual -I, --ignore-installed Ignora los paquetes instalados (reinstala en su lugar). esta bandera reinstalará explícitamente los paquetes especificados, incluso si ya están instalados
madmuffin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.