Je viens de mettre à jour mon ordinateur portable de 14.04 LTS à 16.04 LTS et il semble avoir cassé plusieurs dépendances. J'ai remarqué deux paquets python cassés, mais après avoir fouillé, il semble que les problèmes peuvent aller plus loin.
Le premier, et je pense que le problème le moins grave concerne le python package glib
. Je pense que cela a été installé automatiquement en tant que dépendance pour python-poppler
, qui a été installé via apt
. J'utilise anaconda pour la plupart (installation de packages via conda
ou _ anaconda pip
où je peux), et j'ai remarqué que python/IPython ne peut pas installez glib
(et donc, poppler
correctement). J'obtiens l'erreur suivante:
In [1]: import glib
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-51ae20c37cf1> in <module>()
----> 1 import glib
/usr/lib/python2.7/dist-packages/glib/__init__.py in <module>()
20 # USA
21
---> 22 from glib._glib import *
23 _PyGLib_API = _glib._PyGLib_API
24
ImportError: No module named _glib
Cependant, lorsque j'essaie d'importer glib dans le système python (/usr/bin/python
), il importe sans problème. Le seul problème similaire que j'ai pu trouver est celui-ci , il semble donc que ce soit un problème anaconda. Je ne veux pas supprimer anaconda, existe-t-il un autre moyen de résoudre ce problème?
Deuxièmement, et plus sérieusement, j'ai des problèmes avec pyexiv2
. Cela empêche les applications variety
et picty
de s'ouvrir. Lorsque j'essaie d'importer pyexiv2
J'obtiens l'erreur suivante:
In [1]: import pyexiv2
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-45fdaeaee197> in <module>()
----> 1 import pyexiv2
/usr/lib/python2.7/dist-packages/pyexiv2/__init__.py in <module>()
58 """
59
---> 60 import libexiv2python
61
62 from pyexiv2.metadata import ImageMetadata
ImportError: /usr/lib/python2.7/dist-packages/libexiv2python.so: undefined symbol: _ZNK5Exiv27ExifKey7tagNameB5cxx11Ev
Cela se produit que j'utilise python ou le python système).
J'ai trouvé n problème similaire ici, et il semble donc que ce soit un problème de non-synchronisation de mes pyexiv2 et exiv2, mais j'ai une idée de comment résoudre ce problème. Apparemment, exiv2 n'est pas installé sur mon système et lorsque j'essaie de l'installer, j'obtiens ce qui suit:
$ Sudo apt install exiv2
[Sudo] password for billbrod:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
exiv2 : Depends: libexiv2-14 (= 0.25-2.1) but 0.25-2.1.0pmo2~trusty is to be installed
E: Unable to correct problems, you have held broken packages.
et 0.25-2.1.0pm02~trusty
ne semble pas être une version répertoriée sur https://launchpad.net/ubuntu/xenial/+package/libexiv2-14 , et la recherche de cette information ne se révèle pas non plus. fidèle était le nom de la version 14.04 LTS, non? Est-il donc possible que la mise à jour de libexiv2
lors de la mise à jour du 14.04 au 16.04? Les seuls autres problèmes similaires avec pyexiv2 que je peux trouver sont un ancien problème qui a été corrigé et pour quelqu'un qui a compilé pyexiv2 lui-même (je ne peux pas publier les liens car ma réputation n'est pas assez élevée), aucun d'eux n'est pertinent.
Toute aide serait grandement appréciée! À ce stade, je suis tenté d'essuyer ma machine et de faire une installation propre, mais j'espère qu'il y a une autre façon.
J'ai donc fini par effacer mon disque et réinstaller Ubuntu 16.04 LTS. Cela a résolu le deuxième problème complètement, mais n'a pas affecté le premier. J'ai essayé de désinstaller et de réinstaller anaconda, ainsi que d'essayer python 3, dont aucun n'a fonctionné. Heureusement, la seule chose dont j'ai besoin python = bibliothèque pour est un peu de code que je voulais réécrire dans elisp de toute façon, donc je peux contourner le problème.