Tag Archiv: getlibs

Струйный принтер Lexmark серии Z600 в Ubuntu 11.04

Несомненно, мы судим об операционную систему не в последнюю очередь по поддержке разнообразного оборудования. Хотя проблема поддержки Linux‘ом разнообразного оборудования уже малоактуальна, и касается лишь только новых моделей (да и то — часто весьма непродолжительное время, до следующего обновления дистрибутива), всё же некоторая периферия требует особого подхода. При этом, иногда приходится сталкиваться с проблемой, что исчезает поддержка старого оборудования. Я уже довольно долгое время использую в качестве вторичного принтера старенький, но удобный принтер Lexmark Z617
Провозившись с установкой этого принтера последний раз года 2 назад, я больше к этому вопросу не возвращался; благо, при обновлении системы работоспособность сохранялась. На тот момент использовались rpm-пакеты с сайта производителя, над которыми необходимо было провести ряд манипуляций и вручную доустановить необходимые компоненты. 
Поставив недавно с нуля Ubuntu 11.04, я решил по-новому взглянуть на установку этого принтера, и поискать более простой способ установки, который и удалось обнаружить.

Сразу хочу отметить, что на официальном сайте производителя более драйверов для Linux (пусть даже в виде rpm-пакетов) обнаружить не удалось. К счастью, оказалось, что уже существует готовая сборка драйвера для Ubuntu, предоставляемая свободным сообществом.
В качестве базового, использовалось это руководство, однако я позволил себе внести еще кое-какие упрощения. Перед установкой отключите принтер от USB-порта.
Итак, 
1) установим библиотеку libstdc++5 
sudo apt-get install libstdc++5

 Если у вас 32-битная версия дистрибутива, то переходите к пункту 3, а для пользователей 64-битной необходимо выполнить пункт 2 — установить аналогичную библиотеку 32-битной архитектуры

2) используя getlibs (руководство по установке здесь), добавим аналогичную библиотеку 32-битной архитектуры

sudo getlibs -p libstdc++5

3) установим  подготовленную сборку драйвера, предварительно скачанную отсюда, и сохраненную в домашний каталог:

 sudo dpkg -i ~/lexmark.z600-0.4.deb

Я рекомендую воспользоваться именно dpkg (или же графическим gdebi), поскольку Software Center в Ubuntu 11.04, который теперь по умолчанию используется для установки пакетов, страдает чрезмерной подозрительностью.
После этого смело подключайте принтер в USB-порт и печатайте предложенную пробную страницу для проверки работоспособности. На этом всё. )

Ставим 32-битные библиотеки в 64-битном Ubuntu или Debian

Одним из аргументов против установки 64-битных систем была проблема с некоторыми устаревшими 32-битными программами (обычно проприетарными), и что более важно — с драйверами.
В этой ситуации часто приходится «вручную» находить и скачивать 32-битные библиотеки, создавать сим-линки и т.д.
Для автоматизированного решения такой проблемы существует пакет getlibs, который работает под Ubuntu, debian, а также под клонами этих ОС.

Скачать его можно как у разработчика так и на зеркале.
При скачке пакет можно установить, открыв с помощью Gdebi. Если же этого не произошло, то установить можно при помощи команды
 sudo dpkg -i getlibs-all.deb
Пользоваться программой несложно, и возможно несколькими способами:

1. Установка всех необходимых для 32-битного приложения библиотек:

sudo getlibs /usr/bin/program

где program — имя программы
2. Установить конкретные библиотеки (будут автоматически скачаны из интернета):

sudo getlibs -l library.so.0

3.  Установить по имени пакета (будут автоматически скачаны из интернета):

 sudo getlibs -p library

где library в этом и предыдущих пунктах — имя библиотеки или пакета.
4. Установить 32-битную библиотеку в виде deb-пакета, расположенную по указанному пути на диске:

sudo getlibs -i /home/user/i386_library.deb

5. Установить 32-битную библиотеку по прямой ссылке в интернет:

 getlibs -w http://mirrors.kernel.org/ubuntu/library_i386.deb
Примечание: для того, чтобы установить 32-битную программу (не библиотеку) в 64-битной системе следует воспользоваться параметром —force-all в dpkg:
 sudo dpkg -i —force-all package_name.deb
 Кроме перечисленных основных опций у getlibs есть еще ряд вспомогательных параметров:
—apt-file : поиск имени пакета для библиотек на packages.ubuntu.com. Полезно для не-Ubuntu пользователей.

—build : (бета-функция) конвертирует 32-битный пакет в 64-битный и устанавливает его (только библиотеки). Не рекомендуется к использованию.

—savebuild : используется с  —build. Сохраняет полученный 64-битный пакет в домашний каталог (/home/$USER)

—mirror
или -m : использовать указанное зеркало для поиска библиотек.

—verbose : подробный вывод результатов работы на экран.

—ldconfig :  выполняет ldconfig для каталогов, куда установлены новые библиотеки

-64 : Установка 64-битных пакетов для  64-битных систем

—distro : выбор между  Ubuntu и Debian. Ubuntu устанавливает в  /usr/lib32 и/или  /lib32. Debian устанавливает в /emul/ia32-linux/

—release : допустимы значения hardy gutsy feisty edgy или dapper.
Определяет, какой веб-интерфейс использовать для поиска.