ошибка при загрузке общих библиотек, файл слишком короткий

15

От одного из моих клиентов я получил заявку. Когда я пытаюсь запустить его, я получаю следующую ошибку

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

В структуре моего проекта я вижу следующее:

-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

Повреждена ли моя общая библиотека libvtkWidgets? Как решить эту ошибку?

tommyk
источник
Запуск sudo ldconfigдает вам точную проблему («Файл *** пуст, не проверен.» Или «*** не является символической ссылкой»)
Ян Фото

Ответы:

19

Вероятно, произошла ошибка копирования / извлечения библиотек. libvtkWidgets.so и libvtkWidgets.so.5.4 должны быть не файлами, а символическими ссылками. Попробуйте следующее:

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

В любом случае вам следует проверить, доступно ли устанавливаемое вами программное обеспечение в центре программного обеспечения. Если он недоступен и если вышеуказанное исправление не работает, вам нужно будет связаться с поставщиком приложения.

Жоау Пинту
источник
1
Большое спасибо, действительно я сделал ошибку, извлекая файлы в Windows и копируя извлеченные файлы на мою виртуальную машину Ubuntu. Вот почему все символические ссылки исчезли.
Tommyk
Я создаю свое собственное расширение C ++, и даже после создания символической ссылки проблема сохраняется. Есть ли кеш, о котором я не знаю?
noɥʇʎԀʎzɐɹƆ