MC (Midnight Commander) is a text-mode full-screen file manager and visual shell. It provides a clear, user-friendly, and somewhat protected interface to a Unix system while making many frequent file operations more efficient and preserving the full power of the command prompt.
Download (HTTP): http://www.ibiblio.org/pub/Linux/utils/file/managers/mc/mc-4.6.1.tar.gz
Download (FTP): ftp://ftp.uni-koeln.de/util/shell/mc-4.6.1.tar.gz
Download MD5 sum: 18b20db6e40480a53bac2870c56fc3c4
Download size: 3.8 MB
Estimated disk space required: 29 MB
Estimated build time: 0.4 SBU
Midnight Commander without the Debian patch is completely unusable in multibyte locales because it assumes that characters and bytes are the same thing. The issue manifests itself as massive screen content corruption similar to what is depicted in this screenshot (taken in the ru_RU.UTF-8 locale). For a general discussion of this type of issue, see the Breaks Multibyte Characters section of the Locale Related Issues page. The Debian patch mostly fixes this issue, and adds support for recoding remote FTP filenames. Debian also fixed 64-bit issues, rare segfaults in mcedit, and improved syntax highlighting.
If you do not use a multibyte locale and do not need any of the new features or fixes, the patch is still supposed to be harmless. However, the patch changes the dependencies and build instructions, and in the past it caused unacceptable regressions for non-UTF-8 locale users. Thus, failsafe instructions without the patch are left in the book just in case. Due to the size and unofficial nature of the patch, please do not report bugs in the patched MC to the original MC developers.
GLib-1.2.10 (untested with Debian patch) or GLib-2.10.3
GPM-1.20.1, X Window System, Samba-3.0.23d, S-Lang-2.0.6 (required when building with Debian patch), Zip-2.32, UnZip-5.52, and GNOME Libraries-1.4.2
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/MC
If desired, apply Debian fixes:
patch -Np1 -i ../mc-4.6.1-debian_fixes-1.patch
Install MC by running the following commands:
CPPFLAGS="-DUTF8" ./configure --prefix=/usr \ --enable-charset && make
MC with Debian patches expects its documentation to be stored in UTF-8 encoding on disk, and automatically converts it to the locale encoding when displaying on the terminal. This is different from the expectations of the unpatched MC, so the documentation files have to be converted if (and only if) the Debian patch has been applied:
convert-mans ISO-8859-1 UTF-8 lib/mc.hint{,.es,.it,.nl} && convert-mans ISO-8859-2 UTF-8 lib/mc.hint{.cs,.hu,.pl} && convert-mans ISO-8859-5 UTF-8 lib/mc.hint.sr && convert-mans KOI8-R UTF-8 lib/mc.hint.ru && convert-mans KOI8-U UTF-8 lib/mc.hint.uk && convert-mans BIG5 UTF-8 lib/mc.hint.zh && convert-mans ISO-8859-1 UTF-8 doc/{es,it}/mc.hlp.* && convert-mans ISO-8859-2 UTF-8 doc/{hu,pl}/mc.hlp.* && convert-mans ISO-8859-5 UTF-8 doc/sr/mc.hlp.sr && convert-mans KOI8-R UTF-8 doc/ru/mc.hlp.ru
This package does not come with a test suite.
Now, as the root user:
make install && chmod 1755 /usr/lib/mc/cons.saver
CPPFLAGS="-DUTF8": This parameter activates UTF-8 support in the Debian patch and has no effect without this patch.
--enable-charset: This option adds support to mcedit for editing files in encodings different from the one implied by the current locale. This feature works in non-UTF-8 locales only, even with the Debian patch.
--with-screen=(slang|mcslang|ncurses): This parameter selects the screen library used by MC. NCurses support is currently buggy (MC does not handle mouse events in xterm correctly). UTF-8 support in the Debian patch is functional only when external S-Lang-2.0.6 is used as a screen library (this is the default).
--with-codepagedir=DIR: This parameter was useful only with SAMBA-2.x. New versions of SAMBA do not have codepage files.
chmod 1755 /usr/lib/mc/cons.saver: The cons.saver program has to be installed setuid root, because on LFS regular users have no access to /dev/vcsa* devices. This step is optional if MC is going to be started from X terminal emulators or ssh sessions only (thus rendering the cons.saver binary completely unneeded).
Last updated on 2007-02-13 23:01:46 -0600