LINUX.ORG.RU

Одновременная установка двух версий одной библиотеки.


0

1

Есть: Ubuntu 10.10, библиотека libexpat версии 2.0.1.

Необходимо: Установить дополнительно библиотеку libexpat версии 2.0.0.

Что делаю: Качаю с http://expat.sourceforge.net/ source для libexpat-2.0.0. Собираю. Устанавливаю. По умолчанию ставиться в /usr/local/lib:

$/usr/local/lib/
libexpat.a  libexpat.la  libexpat.so  libexpat.so.1  libexpat.so.1.5.0
Но в списке установленых библиотек данной версии нет:
$/sbin/ldconfig -p | grep libexpat
 libexpatw.so.1 (libc6) => /lib/libexpatw.so.1
 libexpat.so.1 (libc6) => /lib/libexpat.so.1
$dpkg -l |grep 'ii  libexpat'
ii  libexpat1                        	2.0.1-7ubuntu1
Вопрос: Как сделать доступной для приложений версию libexpat-2.0.0?

Глобальный вопрос: Как в Ubuntu реализован механизм одновременной установки разных версий одной библиотеки?

Заранее спасибо!

она, даже если ты её добавишь в пути ld-linux.so, подменит системную 2.0.0
если тебе нужно для линковки со своим кодом, ставь её в ~/
те в /home/твойюзер/

anonymous
()
Ответ на: комментарий от nanoolinux

Например, если я хочу запустить приложение some_porgam, для которого в зависимостях libexpat-2.0.0(вместо стандартной libexpat-2.0.0), то мне необходимо:

1. Сделать

$ export LD_LIBRARY_PATH="/usr/local/lib"

2. Запустить some_porgam.

$ ./some_program

Я правильно понимаю?

arttykh
() автор топика
Ответ на: комментарий от arttykh

LD_LIBRARY_PATH=/usr/local/lib ./some_program

чтобы не засорять env

anonymous
()

LD_PRELOAD - грубо, но эффективно LD_LIBRARY_PATH - грубо. man ld.so

r2d2
()

симлинки никто не отменял

ipwww ★★
()

Снеси Ubuntu

И поставь Gentoo, там есть слоты, как раз предназначены для держания двух (и более) версий пакетов.

srj ★★
()
Ответ на: комментарий от anonymous

Так ведь можно создать ~/usr/lib и туда кидать, разве нет?

ms-dos32
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.