Есть:
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 реализован механизм одновременной установки разных версий одной библиотеки?Заранее спасибо!
> Необходимо:/sbin/ldconfig -v | grep "/usr/local/lib"
or
echo "/usr/local/lib" >> /etc/ld.so.conf && ldconfig
> echo "/usr/local/lib" >> /etc/ld.so.conf && ldconfigТеперь библиотека есть в списке:
$/sbin/ldconfig -p | grep libexpat
libexpatw.so.1 (libc6) => /lib/libexpatw.so.1
libexpat.so.1 (libc6) => /usr/local/lib/libexpat.so.1
libexpat.so.1 (libc6) => /lib/libexpat.so.1
libexpat.so.1 (libc6) => /usr/lib/libexpat.so.1
libexpat.so (libc6) => /usr/local/lib/libexpat.so
libexpat.so (libc6) => /usr/lib/libexpat.soНо dpkg её не отображает:
$dpkg -l |grep 'ii libexpat'
ii libexpat1 2.0.1-7ubuntu1Это проблема?
Достаточно ли добавления директории /usr/local/lib в /etc/ld.so.conf для корректной работы програм с версией 2.0.0?
>Качаю с http://expat.sourceforge.net/ source для libexpat-2.0.0. Собираю. Устанавливаю.Где тут dpkg -i или apt-get/aptitude install ?
>>Качаю с http://expat.sourceforge.net/ source для libexpat-2.0.0. Собираю. Устанавливаю.
> Где тут dpkg -i или apt-get/aptitude install ?Ок. Я понял.
Обобщающий вопрос: значит добавления директории, в которую установлена библиотека(например /usr/local/lib), в файл /etc/ld.so.conf достаточно для корректной работы приложения с данной версией библиотеки(даже если в /usr/lib или /lib лежит другая версия библиотеки)?
>>>Качаю с http://expat.sourceforge.net/ source для libexpat-2.0.0. Собираю. Устанавливаю.
>> Где тут dpkg -i или apt-get/aptitude install ?
> Ок. Я понял.
> Обобщающий вопрос: значит добавления директории, в которую установлена библиотека(например
> /usr/local/lib), в файл /etc/ld.so.conf достаточно для корректной работы приложения с
> данной версией библиотеки(даже если в /usr/lib или /lib лежит другая версия
> библиотеки)?как у Вас все туго... что такое dll в винде знаете? так вот so (shared object) аналог. только надо либо явно указывать библиотеки для работы_программ/сборки_сырцов, либо отдать это на откуп специально обученному зверю. man ldconfig и смотрите какие файлы конфига он использует в Вашей системе. и после изменения настроек не забудьте запустить ldconfig чтоб он их скушал/скомпилил и отдавал актуальные данные.
> Глобальный вопрос:
> Как в Ubuntu реализован механизм одновременной установки разных версий одной библиотеки?как и везде - разными файлами. может Вы о каком-то менеджере пакетов хотели спросить?
> Заранее спасибо!