 |
Реклама:
|  |
Внимание! Читая пророчества на этом сайте помните что достоверность трудно проверить и все может во времени изменяться - самое главное думать своей головой и не верить легкомысленно всему что говорят, особенно советское телевидение "О дне же том, или часе, никто не знает, ни Ангелы небесные, ни Сын, но только Отец (Мк. 13, 32)"
Запуск программы, собранной с другой версией glibc
| Иногда необходимо на системе с glibc 2.2 запустить программу, собранную с glibc 2.3. Если бы вместо glibc была практически любая другая библиотека - можно было бы взять где-нибудь нужную ее версию и поставить рядом с имеющейся. Проблем обычно не бывает. Но в случае с glibc так сделать не удастся, ведь это самая главная системная библиотека, и нескольких ее версий в системе быть не может. А поставить новую версию вместо старой не удастся - не сможет запуститься ни одна программа, требующая старую версию. | Безусловно, лучшим решением проблемы является пересборка необходимой программы под имеющуюся версию glibc. Но если этого сделать нельзя - придется запускать программу особым образом. Итак, сначала нам надо где-то взять собственно glibc 2.3. Затем мы кладем ее файлы в какую-нибудь папку, например, в папку lib в своей домашней директории. Тогда запускать требующую glibc 2.3 программу придется так:
$ LD_LIBRARY_PATH=~/lib ~/lib/ld-linux.so.2 /usr/local/bin/myprog
Здесь сначала устанавливается переменная окружения LD_LIBRARY_PATH=~/lib, которая говорит, что библиотеки должны искаться в папке ~/lib (если вы положили их в другое место - поменяйте путь). Затем запускается динамический загрузчик ld-linux.so.2, который загружает программу myprog вместе с необходимыми ей библиотеками.
Технические подробности:
При обычном запуске любой программы система незаметно для пользователя запускает системный /lib/ld-linux.so.2, загружающий все библиотеки. Можно запускать его и самому:
$ /lib/ld-linux.so.2 /bin/ls /
bin boot dev etc home lib mnt opt proc root sbin sys tmp usr var
В данном случае неважно, был ли ld-linux.so.2 указан при запуске программы - система и так знает, что запускать его надо из /lib (точнее, это записано в самом файле /bin/ls). Но если мы используем нестандартную (т.е. отличную от установленной в /lib) версию glibc, мы должны использовать соответствующую версию ld-linux.so.2. Для этого и приходится указывать путь к нему вручную.
www.knoppix.ru/adv220304.shtml
 |
|
• Япония, Корея и Китай создадут альтернативу Windows • Свободное ПО - всерьез и надолго • Даже бесплатной Windows не остановить Linux • Аутентификация на SSH сервере с использованием ключей • Microsoft обвинили в клевете на Linux • http://letter.org.ua/ Збір підписів під листом до Президента України • http://letter.org.ua/ Сбор подписей под письмом к Президенту Украины • Написание модулей для CMS Drupal • Русификация Fluxbox в gentoo • Синхронизация PALM под Linux • Драйверы. nForce для Linux ; Руководство по установке набора драйверов NVIDIA для Linux • Переход Вены на открытое ПО проходит с успехом
|
|
|
Внимание! Читая пророчества на этом сайте помните что достоверность трудно проверить и все может во времени изменяться "О дне же том, или часе, никто не знает, ни Ангелы небесные, ни Сын, но только Отец (Мк. 13, 32)"
|
|