%general-entities; ]> Vim-&vim-version; Vim temporary system Installation of VIM We will cross-compile Vim so that we can have a text editor in /tools. Vim is not technically necessary in the temporary system, in that it is not there to satisfy any package dependencies in the final system, but we believe that a text editor is an extremely useful tool to have there. The configure script is full of logic that aborts at the first sign of cross compiling. Work around this by setting the cached values of several tests with the following command: cat > src/auto/config.cache << "EOF" vim_cv_getcwd_broken=no vim_cv_memmove_handles_overlap=yes vim_cv_stat_ignores_slash=no vim_cv_terminfo=yes vim_cv_toupper_broken=no vim_cv_tty_group=world EOF Change the default location of the vimrc configuration file to /tools/etc: echo '#define SYS_VIMRC_FILE "/tools/etc/vimrc"' >> src/feature.h ./configure \ --build=${CLFS_HOST} --host=${CLFS_TARGET} \ --prefix=/tools --enable-multibyte --enable-gui=no \ --disable-gtktest --disable-xim --with-features=normal \ --disable-gpm --without-x --disable-netbeans \ --with-tlib=ncurses The meaning of the new configure options: --enable-multibyte This optional but highly recommended switch enables support for editing files in multibyte character encodings. This is needed if using a locale with a multibyte character set. This switch is also helpful to be able to edit text files initially created in Linux distributions like Fedora that use UTF-8 as a default character set. --enable-gui=no --disable-gtktest --disable-xim --with-features=normal --disable-gpm --without-x --disable-netbeans These options prevent Vim from trying to link to libraries that might be on the host but won't exist inside the temporary build environment. --with-tlib=ncurses Tells Vim to use Ncurses as its terminal library. ln -sv vim /tools/bin/vi Create a temporary vimrc to make it function more the way you may expect it to. This is explained more in the final system: cat > /tools/etc/vimrc << "EOF" " Begin /tools/etc/vimrc set nocompatible set backspace=2 set ruler syntax on " End /tools/etc/vimrc EOF <para>Details on this package are located in <xref linkend="contents-vim" role="."/></para> </sect2> </sect1>