交叉编译VIM并移植到ARM嵌入式Linux系统

一、编译环境:

Host机:ubuntu-16.10(32bit)

Target:arm

    交叉工具链:arm-linux-gnueabi-gcc

    工具包:

                          vim-7.4.tar.bz2

                         ncurses-5.9.tar.gz

vim下载地址:ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2

ncurses下载地址:http://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz

 

二、编译准备

将下载后的压缩文件放到/home/abc/test文件夹,解压缩两个文件。

tar xvzf ncurses-5.9.7.tar.gz

bzip2 -d vim-7.4.tar.bz2

tar xvf vim-7.4.tar

得到两个目录

vim74    ncurses-5.9

三、编译ncurses

由于vim依赖于libtinfo.so库,而libtinfo.so库的功能都已经编入了ncurses库中,因此需要先编译ncurses,再创建libtinfo.so的符号链接链到ncurses库即可,进入ncurses目录,并配置交叉编译

cd ncurses-5.9

./configure --prefix=/home/test/install_ncurses  --host=arm-linux-gnueabi--without-cxx --without-cxx-binding --without-ada --without-manpages --without-progs--without-tests --with-shared 

    编译并安装ncurses

make && make install

 

  这样在/home/test/install_ncurses目录下就生成了ncurses的库和头文件等文件 

bin  include  lib  share

  进入lib目录,创建littinfo的符号链接

cd lib

ln -s libncurses.so.5 libtinfo.so.5

ln -s libtinfo.so.5 libtinfo.so

拷贝交叉编译后的install_ncureses目录下的所有到交叉编译机相应目录下

四、编译vim

进入vim目录,并配置vim编译环境

cd /home/abc/test/vim74

./configure --host=arm-fsl-linux-gnueabi--prefix=/usr --with-features=huge --disable-gui --without-x --disable-selinux--disable-acl --disable-gpm --with-tlib=ncurses vim_cv_getcwd_broken=novim_cv_memmove_handles_overlap=yes vim_cv_stat_ignores_slash=yesvim_cv_tgetent=zero vim_cv_terminfo=yes vim_cv_toupper_broken=novim_cv_tty_group=root vim_cv_tty_mode=0620

开始编译

    make

  如果编译中出现 arm-linux-gnueabi/bin/ld: cannot find -ltinfo的错误,那说明tinfo的库制定的路径不对,或者前面的ncuses编译的步骤存在问题。

 

五、移植到目标机

首先将ncurses库移植到目标机的/usr/lib目录,并创建tinfo库相关的符号链接,笔者将目标机的根文件系统挂载到了/mnt/sysroot目录

cd /home/abc/test/install_ncurses

cp -frp lib/* / usr/lib/

cp -frp share/* / usr/share/

 

/*创建libtinfo.so的符号链接*/

cd /mnt/sysroot/usr/lib

vim可执行文件移植到目标机

cd /home/abc/test/vim74/src

cp vim /usr/sbin

cd /usr/sbin

chmod 777 vim

删除vi,并将vi链接到vim

cd /bin

rm -f vi

ln -s /usr/sbin/vim vi

 

六、配置vim

vim.tar.bz2解压放入/usr/share目录;将vimrc文件放入/etc/vim目录;解压vim.tar.bz2后编辑vim/vim74/debian.vim

搜索:if &term =~ "xterm-debian" || &term =~"xterm-xfree86"

改为:if&term =~ "xterm-debian" || &term =~ "xterm-xfree86"|| &term =~ "linux"sett_Co=16改为set t_Co=8


配置文件下载地址:http://download.csdn.net/detail/feixiang3839/9881569

猜你喜欢

转载自blog.csdn.net/feixiang3839/article/details/73772275