1 votes

Installation d'une bibliothèque à l'aide de checkinstall qui a créé un paquet nommé "Python" et provoque des problèmes de dépendance

Je voulais essayer la nouvelle version majeure d'une bibliothèque c++ appelée gtsam. Comme j'utilise actuellement une ancienne version de la bibliothèque pour plusieurs projets et que je n'étais pas sûr des problèmes de dépendance, j'ai décidé de l'installer en utilisant checkinstall :

mkdir build && cd build
make
sudo checkinstall

Comme il était fourni avec un wrapper Python que je voulais également installer, je l'ai fait :

cd python
sudo checkinstall python setup.py install

Maintenant, je voulais supprimer la version à nouveau, donc j'ai vérifié sous quel nom de paquet la bibliothèque était installée.

La bibliothèque principale s'appelait "build", ce que je trouvais déjà étrange, bien que je puisse la supprimer en utilisant :

sudo dkpg -r build

Quand j'ai maintenant essayé de faire la même chose avec :

sudo dpkg -r python

il s'est plaint de problèmes de dépendance parce qu'il interprète "Python" comme le paquet principal ubuntu Python.

Si je le fais dpkg -l python J'ai compris :

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                          Version                     Architecture                Description
 +++-=============================================-===========================-===========================-==================================================
ri  python                                        20160629-1                  amd64                       Python part of gtsam-4.0.0-alpha1.

À ce stade, j'ai un peu peur et je ne sais pas quoi faire pour résoudre ce problème. Je veux désinstaller les fichiers installés par checkinstall python setup.py install sans foutre en l'air la configuration de mon système Python.

En fait, j'ai utilisé checkinstall parce que j'ai fait pas ne veulent pas s'inquiéter d'inverser l'installation...

2voto

Mox Points 129

Ok, donc je pense avoir résolu le problème.

J'ai découvert qu'avec apt-cache showpkg python Je peux visualiser toutes les différentes versions de Python disponibles. J'ai choisi la dernière version et je l'ai installée en utilisant :

sudo apt-get install python=2.7.5-5ubuntu3

Il m'a donné un avertissement qu'il ne pouvait pas supprimer certains "vieux répertoires" :

dpkg: warning: unable to delete old directory '/usr/local/lib/python2.7/dist-packages': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local/lib/python2.7': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local/lib': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local': Directory not empty

Mais c'est bon, puisque j'ai essayé de résoudre le problème. sans en supprimant ces répertoires.

Maintenant, si je fais un dpkg -l python J'obtiens le résultat suivant, correct :

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                          Version                     Architecture                Description
+++-=============================================-===========================-===========================-====================================================================
ii  python                                        2.7.5-5ubuntu3              amd64                       interactive high-level object-oriented language (default version)

Je surveillerai si mon système présente d'autres comportements étranges, mais pour l'instant, il semble que cela ait réglé le problème.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X