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 ...)

NeuronQ
fuente

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
Jeff Tratner
fuente
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}
hamed baziyad
fuente
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