erreur lors du chargement des bibliothèques partagées, fichier trop court

15

De l'un de mes clients, j'ai reçu une application. Lorsque j'essaie de l'exécuter, j'ai eu l'erreur suivante

error while loading shared libraries: ./libvtkWidgets.so.5.4: file too short

Dans ma structure de projet, je vois ce qui suit:

-rwxrwxrwx  1 tomasz tomasz       20 2011-02-01 10:44 libvtkWidgets.so
-rwxrwxrwx  1 tomasz tomasz       22 2011-02-01 10:44 libvtkWidgets.so.5.4
-rwxrwxrwx  1 tomasz tomasz  2147103 2011-02-01 10:44 libvtkWidgets.so.5.4.2

Ma bibliothèque partagée libvtkWidgets est-elle corrompue? Comment résoudre cette erreur?

tommyk
la source
L'exécution sudo ldconfigvous donne le problème exact ("Le fichier *** est vide, non vérifié." Ou "*** n'est pas un lien symbolique")
Yan Foto

Réponses:

19

Il y a probablement eu une erreur lors de la copie / extraction des bibliothèques. libvtkWidgets.so et libvtkWidgets.so.5.4 ne doivent pas être des fichiers mais des liens symboliques. Essayez ce qui suit:

rm libvtkWidgets.so.5.4 libvtkWidgets.so
ln -s libvtkWidgets.so.5.4.2 libvtkWidgets.so.5.4
ln -s libvtkWidgets.so.5.4 libvtkWidgets.so

Quoi qu'il en soit, vous devez vérifier si le logiciel que vous installez est disponible dans le centre de logiciels. S'il n'est pas disponible et si le correctif ci-dessus ne fonctionne pas, vous devrez contacter le fournisseur d'application.

João Pinto
la source
1
Merci beaucoup, en effet j'ai fait une erreur en extrayant des fichiers sur Windows et en copiant les fichiers extraits sur ma machine virtuelle Ubuntu. C'est pourquoi tous les liens symboliques ont disparu.
tommyk
Je crée ma propre extension C ++, et même après en avoir fait un lien symbolique, le problème a persisté. Y a-t-il un cache dont je ne suis pas au courant?
noɥʇʎԀʎzɐɹƆ