Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 11. Системные утилиты Вперед

Пакет MC-4.6.1

Знакомимся с пакетом MC

Пакет MC (Midnight Commander) является полноэкранным файловым менеджером, работающим в текстовом режиме, и визуальной командной оболочкой. Он обеспечивает четкий, удобный, и в некотором смысле защищенный интерфейс для системы Unix, выполняющий более эффективно множество конкретных операций с файлами и предоставляющий полную мощность командной строки.

Информация о пакете

Дополнительные загрузки

Нужен ли патч Debian

Midnight Commander без патча Debian абсолютно непригоден для многобайтовых локалей, поскольку в нем предполагается, что символы и байты - это одно и то же. Проблема проявляется в сильном искажении изображения, выдаваемого на экран, наподобие того, что показано на скриншоте (получен в локали ru_RU.UTF-8). С общей дискуссией по этому виду проблем можно ознакомится в разделе Breaks Multibyte Characters ("Разрывы многобайтовых символов") на странице Locale Related Issues ("Вопросы, связанные с локалями"). Патч Debian, в основном, исправляет эту проблему и добавляет поддержку дистанционной перекодировки имен файлов, используемых по FTP. Патч Debian также исправляет достаточно редкие ошибки сегментации в mcedit, связанные с 64-битовой архитектурой,а также улучшает подсветку синтаксиса.

Если вы не пользуетесь многобайтовой локалью и вам не нужны какие-либо новые возможностей или исправления, то, как предполагается, патч не должен привести к проблемам. Однако, патч изменяет зависимости и инструкции по сборке пакета и из-за этого у пользователей, имеющих локали, не являющихся локалями UTF-8, в прошлом возникали нежелательные рецедивы. Поэтому в инструкциях книги на всякий случай все еще осталось упоминание о проблемах с безопасностью. Из-за того, что патч большой и является неофициальным, пожалуйста, не сообщайте об ошибках в пропатченном MC разработчикам оригинального MC.

Зависимости пакета MC

Обязательные

GLib-2.30.1

Необязательные

GPM-1.20.6, система X Window, Samba-3.6.1, S-Lang-2.2.2 (необходим, когда сборка осуществляется с патчем Debian), Zip-3.0,UnZip-6.0 и GNOME Libraries-1.4

Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/MC

Установка пакета MC

Исправьте несовместимость MC-4.6.1 с Bash-3.2:

patch -Np1 -i ../mc-4.6.1-bash32-1.patch

Если желаете, примените исправления Debian:

patch -Np1 -i ../mc-4.6.1-debian_fixes-1.patch

Установите пакет MC с помощью следующих команд:

CPPFLAGS="-DUTF8" ./configure --prefix=/usr \
            --enable-charset &&
make

В пакете MC с патчами Debian предполагается, что документация пакета будет храниться на диске в кодировке UTF-8 и, когда документация будет выводиться на терминал, она будет автоматически ее преобразовываться в кодировку локали. Это отличается от того, что происходит с непропатченным MC, поэтому если (и только если) был применен патч Debian, файлы документации должны быть преобразованы следующим образом:

for file in lib/mc.hint{,.es,.it,.nl} doc/{es,it}/mc.hlp.*
do
    iconv -f ISO-8859-1 -t UTF-8 ${file} > ${file}.utf8 &&
    mv ${file}.utf8 ${file}
done &&
for file in lib/mc.hint{.cs,.hu,.pl} doc/{hu,pl}/mc.hlp.*
do
    iconv -f ISO-8859-2 -t UTF-8 ${file} > ${file}.utf8 &&
    mv ${file}.utf8 ${file}
done &&
for file in lib/mc.hint.sr doc/sr/mc.hlp.sr
do
    iconv -f ISO-8859-5 -t UTF-8 ${file} > ${file}.utf8 &&
    mv ${file}.utf8 ${file}
done &&
for file in doc/ru/mc.hlp.ru lib/mc.hint.ru
do
    iconv -f KOI8-R -t UTF-8 ${file} > ${file}.utf8 &&
    mv ${file}.utf8 ${file}
done &&
iconv -f KOI8-U -t UTF-8 lib/mc.hint.uk > lib/mc.hint.uk.utf8 &&
mv lib/mc.hint.uk.utf8 lib/mc.hint.uk &&
iconv -f BIG5 -t UTF-8 lib/mc.hint.zh > lib/mc.hint.zh.utf8 &&
mv lib/mc.hint.zh.utf8 lib/mc.hint.zh

В этом пакете набор тестов отсутствует.

Теперь в роли пользователя root выполните:

make install &&
chmod 1755 /usr/lib/mc/cons.saver

Пояснение команд

CPPFLAGS="-DUTF8": Этот параметр активирует поддержку UTF-8 при использовании патча Debian и не оказывает никакого эффекта без этого патча.

--enable-charset: Этот параметр добавляет в mcedit поддержку редактирования файлов в кодировках, отличающихся от тех, которые допускаются текущей локалью. Эта возможность используется даже при наличии патча Debian только с локалями, которые не являются локалями UTF-8.

--with-screen=(slang|mcslang|ncurses): Этот параметр выбирает экранную библиотеку, используемую пакетом MC. В NCurses в настоящий момент достаточно много ошибок (MC не обрабатывает правильно в xterm события мыши). Патч Debian поддерживает использование UTF-8 только в случае, когда в качестве экранной библиотеки используется внешний пакет S-Lang-2.2.2 (это происходит по умолчанию).

--with-codepagedir=DIR: Этот параметр используется только с SAMBA-2.x. В новых версиях SAMBA нет файлов с кодовыми страницами.

chmod 1755 /usr/lib/mc/cons.saver: Программу cons.saver должен устанавливать пользователь в роли root, поскольку в LFS обычные пользователи не имеют доступа к устройствам /dev/vcsa*. Это делать необязательно, если MC будет запускаться только из эмулятора X или из сессий ssh (когда рендеринг, осуществляемый бинарным файлом, совершенно не нужен).

Конфигурирование пакета MC

Конфигурационные файлы

~/.mc/*

Подробнее о конфигурировании

При первом запуске mc создается директорий ~/.mc с содержимым. После этого вы сможете вручную или через оболочку MC отредактировать основной конфигурационный файл ~/.mc/ini. Смотрите подробную информацию на странице mc(1) man.

Описание пакета

Установленные программы: cons.saver, mc, mcedit, mcmfmt и mcview

Установленные библиотеки: Нет

Установленные директории: /usr/share/mc и /usr/lib/mc

Краткое описание

cons.saver

используется в mc для сохранения и восстановления текста, находящегося под панелями в текстовой консоли Linux

mc

визуальная оболочка

mcedit

внутренний редактор файлов

mcmfmt

используется в mcview для просмотра файлов почтовых ящиков

mcview

внутренний просмотрщик файлов

Перевод сделан с варианта оригинала, датированного 2011-11-05 21:04:08 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет cpio-2.11   Пакет Sysstat-10.0.2