• 下载两个源码包:

    vim :
ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2\
ncurses-5.8.tar.gz
http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.8.tar.gz
  • 因为vim 依赖相关的终端库,所以先交叉编译 ncurses

    tar -xvf  ncurses-5.8.tar.gz
cd ncurses-5.8
    vim  build.sh
#!/bin/sh ./configure --prefix=/home/sbc_7816_sdk6/test/gdb/ncurses-5.8/output --host=arm-linux CC=arm-linux-gcc --without-cxx --without-cxx-binding --without-ada --without-manpages --without-progs --without-tests --with-shared
    make
make install
生成的库在 output 目录下
sbc_7816_sdk6@aplex:~/test/gdb/ncurses-5.8$ ls output/
bin include lib share sbc_7816_sdk6@aplex:~/test/gdb/ncurses-5.8$ ls output/lib/
libform.a libform.so.5 libmenu_g.a libmenu.so.5.8 libncurses.so libpanel.a libpanel.so.5
libform_g.a libform.so.5.8 libmenu.so libncurses.a libncurses.so.5 libpanel_g.a libpanel.so.5.8
ibform.so libmenu.a libmenu.so.5 libncurses_g.a libncurses.so.5.8 libpanel.so terminfo
  • 相关的库交叉编译出来了,现在来交叉编译 vim

    tar -xvf vim-7.4.tar.bz2
cd vim74
    vim build.sh
#!/bin/sh ./configure --with-features=tiny --disable-gui \
--without-x --disable-selinux --disable-acl --disable-gpm \
CC=arm-none-linux-gnueabi-gcc \
--host=arm-none-linux-gnueabi \
--with-tlib=ncurses \
vim_cv_terminfo=yes \
vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_tgetent=zero \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no \
vim_cv_tty_group=root \
vim_cv_tty_mode=0620
    --with-tlib=ncurses \
// 这个参数很重要,要指定库的名字,不然后 configure 一直过不去。
    make
// 这个make install 不了。
// 在 src 里面能找到 vim
// 将vim 放到目标文件的 usr/sbin/ 里面,替换原来的 vim
// 将 ncurses 的库放在 usr/lib 里面。
// 在目标文件系统里面 etc/profile 里面加入
export TERM="xterm"
// 不然会报 E437: terminal capability "cm" required 错误
    // 启动嵌入式文件系统,看一下效果。

vim 移植记录的更多相关文章

  1. MiniCRT 64位 linux 系统移植记录:64位gcc的几点注意

    32位未修改源码与修改版的代码下载: git clone git@github.com:youzhonghui/MiniCRT.git MiniCRT 64位 linux 系统移植记录 MiniCRT ...

  2. Vim安装记录

    Vim安装记录 参考链接 安装命令 1. 安装依赖库 2. 下载最新vim源码 3. 删除旧版vim 4. 配置configure.编译.安装 5. 设置vim为默认编辑器 6. 必要的配置 Vim安 ...

  3. Linux系列笔记 - vim相关记录

    一.常用到的vim命令 这里只简单记录常用到的命令,后面会有自己记录的命令,但有些可能不常用. 常规模式: gg 跳到文件头 shift+g 跳到文件尾 行数+gg 跳到指定行 如:123gg 跳到1 ...

  4. vim命令记录

    最近开始用vim作为日常编辑器,由于vim的命令过多,现在记录一下

  5. canconfig 移植记录

    can 在Linux 里面是作为一个网络设备存在的,记录一下 canconfig 移植过程. 一. 下载 canutils 和 libsocketcan libsocketcan 地址: http:/ ...

  6. 我的vim配置记录

    一 总体介绍 配置路径,/etc/vim/vimrc,这个是系统的vim配置,假设一台PC多个用户使用,每一个用户的习惯不同的话,能够使用不同的配置.在用户文件夹下新建一个.vimrc的文件就能够了. ...

  7. vim 学习记录

    VIM中PHP代码使用tab键自动完成 更新于 2013-01-18 05:47:55UEANER 目录结构 $ tree -C ~/.vim | grep -v ".cnx" | ...

  8. dhcp server 移植记录

    这次移植 WIFI ,需要做成 AP 模式,所以,需要移植 dhcp 服务端 busybox 里面自带 udhcpd 选项. 打开buildroot , make busybox-menuconfig ...

  9. ssh 移植记录

    利用buildroot 先编译一个 sshd cd buildroot-2016.05/ make menuconfig Target packages ---> Networking appl ...

随机推荐

  1. 【转载】MyEclipse使用指南(精简版)

    1.安装 2.注册 3.配置 window ----> preferences (1)配置 JDK java--->Installed JREs --> Add ---> JR ...

  2. 使用Promise

    Promise所要解决的问题:回调地狱 asyncTask1(data, function (data1){ asyncTask2(data1, function (data2){ asyncTask ...

  3. 记一次400错误引发的血案(URL中特殊符号的转义/400 bad request错误)

    django+nginx+uwsgi部署的站点访问某个URL时发生了400 bad request的错误,而使用django自带的开发版的web server时没有遇到此问题.初步判断是nginx或u ...

  4. Python学习笔记015——文件file的常规操作之四(输入重定向)

    windows命令提示符(cmd.exe)和Linux Shell(bash等)均可通过">"或”>>“将输出重定向.其中, ">"表示 ...

  5. Python学习笔记015——文件file的常规操作seek()及tell()

    1 seek() 1.1 概述 file.seek()用于将文件游标移动到文件的任意位置,便于对文件的当前位置(增.删.改.查)操作 1.2 语法 fileObject.seek(offset[, w ...

  6. 下载url地址的图片

    // string url = "https://api.weixin.qq.com/cgi-bin/media/get?access_token=cNaaMfvhpb1vmcVRXRAdI ...

  7. PLSQL_统计信息系列08_统计信息生成和还原

    2015-02-01 Created By BaoXinjian

  8. 实战:MySQL Sending data导致查询很慢的问题详细分析(转)

    这两天帮忙定位一个MySQL查询很慢的问题,定位过程综合各种方法.理论.工具,很有代表性,分享给大家作为新年礼物:) [问题现象] 使用sphinx支持倒排索引,但sphinx从mysql查询源数据的 ...

  9. sublim3常用插件安装

    1首先需要安装插件管理器Package Control,点击View > Show Console菜单,输入以下代码,按回车运行即可.说明:以下只对st3有效 import urllib.req ...

  10. 单例设计模式-java

    在实际项目中单例模式常见应用场景列举如下: 1.servlet编程中,每个servlet就是单例 2.网站计数器,和Application(servlet中涉及) 3.Strucs1框架中,控制器对象 ...