Last modified 8 years ago
Last modified on 02/01/17 14:21:50
How to use 16M colors on 32-bits systems
MC 4.8.19 onward supports 16 millions colors.
Only, however, if you're using S-Lang 2.3.1 and up on a 64-bits system.
That's exactly the problem: if you're on a 32-bits system, you're toast. (This is supposed to be fixed in some futuristic "version 3" of S-Lang.)
This page shows how to compile S-Lang with 16M colors on a 32-bits system, and how to compile MC against it.
Compiling & installing S-Lang:
rm -rf ~/slang-dev mkdir ~/slang-dev cd ~/slang-dev wget http://www.jedsoft.org/releases/slang/old/slang-2.3.0.tar.gz tar zxvf slang-2.3.0.tar.gz cd slang-2.3.0 wget http://midnight-commander.org/raw-attachment/ticket/3145/slang-truecolor-demo.patch patch -p1 < slang-truecolor-demo.patch # Let MC know we support 16M colors: perl -i -pe 's/#define SLANG_VERSION 20300/#define SLANG_VERSION 30000/' src/slang.h # Remove duplicate declarations (gives compiler warnings): perl -i -pe '$skip || s/SL_EXTERN int SLrline_get_update_client_data \(SLrline_Type \*, VOID_STAR \*\);// && ($skip=1)' src/slang.h ./configure --prefix=$HOME/local-slang make static make install-static rm -rf ~/slang-dev
Compiling MC:
cd /PATH/TO/YOUR/MC-BUILD-DIR ../configure \ --prefix=$HOME/local-mc16Mcolors \ --with-screen=slang \ --with-slang-includes=$HOME/local-slang/include \ --with-slang-libs=$HOME/local-slang/lib \ CFLAGS="-g -O0" make make install # Download a sample 16M skin (if you don't have one already): cd $HOME/local-mc16Mcolors/share/mc/skins wget http://midnight-commander.org/raw-attachment/ticket/3724/seasons-spring16M.ini # Run mc: export TERM=xterm-256color # if it's not already so. export COLORTERM=truecolor # if it's not already so. $HOME/local-mc16Mcolors/bin/mc # Or: /PATH/TO/YOUR/MC-BUILD-DIR/src/mc # ...then go to Options >> Appearance and choose the 16M skin.
Static vs shared S-Lang library
The instructions above compile & install a static library of S-Lang. If you want a shared library, replace "make static; make install-static" with "make; make install", and before running mc do "export LD_LIBRARY_PATH=$HOME/local-slang/lib".