Автор Тема: [РЕШЕНО] Система не находит библиотеки  (Прочитано 2638 раз)

slesarev

  • Новичок
  • *
  • Сообщений: 4
  • Карма: +0/-0
    • Просмотр профиля
Собственно, запускаем произвольное приложение и видим:

$ nautilus
nautilus: /lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib/libexempi.so.3)

Дело в том, что библиотека эта есть, но в /usr/local/lib

Причём проблема появилась внезапно, после почти месяца почти непререкаемой работы системы. Ни с того ни с сего. Как-то надо правильно перезадать глобальные переменные или перенести библиотеки? Как вообще такое могло случиться?

И, я так понимаю, переменная LD_LIBRARY_PATH, как и в убунте, в росинке не уважаема? Куда писать-то чего теперь?

Версия росинки - 8.1 32 бита, если это может иметь значение.

Спасибо.

Hromin

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 590
  • Карма: +145/-4
    • Просмотр профиля
Re: Система не находит библиотеки
« Ответ #1 : 30 Апрель 2010, 12:08:44 »
Цитировать
я так понимаю, переменная LD_LIBRARY_PATH, как и в убунте, в росинке не уважаема?
slesarev, почему не уважаема? Вы пробовали так:
LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
Кстати, посмотрел у себя - все библиотеки в /usr/lib/ , а непосредственно в /usr/local/lib/ есть только папки, а файлов вобще никаких. Возможно, имеет смысл не заморачиваться с LD_LIBRARY_PATH, а перенести библиотеки в родную директорию?

slesarev

  • Новичок
  • *
  • Сообщений: 4
  • Карма: +0/-0
    • Просмотр профиля
Re: Система не находит библиотеки
« Ответ #2 : 30 Апрель 2010, 22:03:31 »
Цитировать
я так понимаю, переменная LD_LIBRARY_PATH, как и в убунте, в росинке не уважаема?
slesarev, почему не уважаема? Вы пробовали так:
LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
Кстати, посмотрел у себя - все библиотеки в /usr/lib/ , а непосредственно в /usr/local/lib/ есть только папки, а файлов вобще никаких. Возможно, имеет смысл не заморачиваться с LD_LIBRARY_PATH, а перенести библиотеки в родную директорию?
Пробовал, и ведь помогает. Но хочется, чтобы всё как-то как у людей.
Значит, говорите, надо перенести всё на место? Ну, сейчас попробую. Хотя чую я в этом какое-то извращение всё таки. Странно.

slesarev

  • Новичок
  • *
  • Сообщений: 4
  • Карма: +0/-0
    • Просмотр профиля
Re: Система не находит библиотеки
« Ответ #3 : 01 Май 2010, 01:20:11 »
Цитировать
я так понимаю, переменная LD_LIBRARY_PATH, как и в убунте, в росинке не уважаема?
slesarev, почему не уважаема? Вы пробовали так:
LD_LIBRARY_PATH=/usr/local/lib/:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH
Кстати, посмотрел у себя - все библиотеки в /usr/lib/ , а непосредственно в /usr/local/lib/ есть только папки, а файлов вобще никаких. Возможно, имеет смысл не заморачиваться с LD_LIBRARY_PATH, а перенести библиотеки в родную директорию?
Пробовал, и ведь помогает. Но хочется, чтобы всё как-то как у людей.
Значит, говорите, надо перенести всё на место? Ну, сейчас попробую. Хотя чую я в этом какое-то извращение всё таки. Странно.

Ай-ай-ай, и так не помогает, вот тут я уже озадачен. Не видит оно ничего и в /usr/lib
А через переменную среды видит. Но по идее должен быть стандартный способ?

slesarev

  • Новичок
  • *
  • Сообщений: 4
  • Карма: +0/-0
    • Просмотр профиля
Re: Система не находит библиотеки
« Ответ #4 : 05 Май 2010, 00:47:51 »
Короче, я идиот. Пофиксено всё вот так:

cat /etc/ld.so.conf.d/libc.conf
# libc default configuration
/usr/local/lib
/usr/lib

Хотя, если кто знает более цивильный способ, расскажите.
« Последнее редактирование: 05 Май 2010, 16:06:13 от slesarev »

Hromin

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 590
  • Карма: +145/-4
    • Просмотр профиля
Re: Система не находит библиотеки
« Ответ #5 : 06 Май 2010, 20:05:55 »
slesarev, скажите, а причину вам не удалось выяснить, ил хотя бы догадки какие-либо есть?