python pip: forcer l'installation en ignorant les dépendances


126

Existe-t-il un moyen de forcer l'installation d'un package python pip en ignorant toutes ses dépendances qui ne peuvent pas être satisfaites?

(Peu m'importe à quel point c'est "mal" de le faire, j'ai juste besoin de le faire, toute logique et raisonnement mis à part ...)

Réponses:


201

pip a un --no-dependenciesinterrupteur. Vous devriez utiliser ça.

Pour plus d'informations, exécutez pip install -h, où vous verrez cette ligne:

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

ok, merci d'avoir pris la peine de répondre ... désolé, je ne sais pas comment j'ai raté ça, j'aurais certainement dû rtfm ...
NeuronQ

19
comment passer cela dans un fichier requirements.txt?
Austin

2
Pour fonctionner avec un requirements.txt, ce serait:pip install --no-deps -r requirements.txt
Graham Place

Quelque chose comme ça pour empêcher l'installation des packages recommandés comme avec apt-get install --no-install-recommends?
Connor

1
@Connor, il n'y a pas d'équivalent aux "packages recommandés" dans aucun des outils de packaging Python standard: distutils, setuptools, pip. Setuptools (et pip) a des "extras", mais ils doivent être explicitement sélectionnés et installés par l'utilisateur.
shadowtalker

6

Lorsque j'essayais d'installer le librosapackage avec pip( pip install librosa), cette erreur s'est produite:

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.

J'ai essayé de le supprimer llvmlite, mais je n'ai pip uninstallpas pu le supprimer. Donc, j'ai utilisé la capacité de ignorede pippar ce code:

pip install librosa --ignore-installed llvmlite

En effet, vous pouvez utiliser cette règle pour ignorer un package que vous ne souhaitez pas considérer:

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

1
ce n'est pas exactement ce que l'op a demandé. selon la page de manuel -I, --ignore-installed Ignorer les packages installés (réinstaller à la place). cet indicateur réinstallera explicitement les paquets spécifiés, même s'ils sont déjà installés
madmuffin
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.