vim 移植记录
下载两个源码包:
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 移植记录的更多相关文章
- MiniCRT 64位 linux 系统移植记录:64位gcc的几点注意
32位未修改源码与修改版的代码下载: git clone git@github.com:youzhonghui/MiniCRT.git MiniCRT 64位 linux 系统移植记录 MiniCRT ...
- Vim安装记录
Vim安装记录 参考链接 安装命令 1. 安装依赖库 2. 下载最新vim源码 3. 删除旧版vim 4. 配置configure.编译.安装 5. 设置vim为默认编辑器 6. 必要的配置 Vim安 ...
- Linux系列笔记 - vim相关记录
一.常用到的vim命令 这里只简单记录常用到的命令,后面会有自己记录的命令,但有些可能不常用. 常规模式: gg 跳到文件头 shift+g 跳到文件尾 行数+gg 跳到指定行 如:123gg 跳到1 ...
- vim命令记录
最近开始用vim作为日常编辑器,由于vim的命令过多,现在记录一下
- canconfig 移植记录
can 在Linux 里面是作为一个网络设备存在的,记录一下 canconfig 移植过程. 一. 下载 canutils 和 libsocketcan libsocketcan 地址: http:/ ...
- 我的vim配置记录
一 总体介绍 配置路径,/etc/vim/vimrc,这个是系统的vim配置,假设一台PC多个用户使用,每一个用户的习惯不同的话,能够使用不同的配置.在用户文件夹下新建一个.vimrc的文件就能够了. ...
- vim 学习记录
VIM中PHP代码使用tab键自动完成 更新于 2013-01-18 05:47:55UEANER 目录结构 $ tree -C ~/.vim | grep -v ".cnx" | ...
- dhcp server 移植记录
这次移植 WIFI ,需要做成 AP 模式,所以,需要移植 dhcp 服务端 busybox 里面自带 udhcpd 选项. 打开buildroot , make busybox-menuconfig ...
- ssh 移植记录
利用buildroot 先编译一个 sshd cd buildroot-2016.05/ make menuconfig Target packages ---> Networking appl ...
随机推荐
- AsyncTask和AsyncQueryHandler之比较
定义AsyncTask子类 private class LoadContactsTask extends AsyncTask<Void, Void, List<TxrjContact> ...
- 自己总结的javascript基础知识
为了面试自己写的概要,参考文献:<javascript高级程序设计> 1.选择符API *querySelector() querySelector()接收一个css选择符,返回与选择符匹 ...
- redis lpop key 当key不存在时,返回nil , 监测redis执行语句是否正常执行
Lpop key 返回值: 列表的头元素. 当key 不存在时, 返回 nil . 需求: 开发在执行 lpop key 时, 出现问题 , 执行语句卡住, 不能执行下去 , 需对此做一个监测 由于 ...
- HDUOJ----专题训练
Problem B Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other) Total Su ...
- 使用Apache FtpServer
Java大法一统天下.遇到任何问题,先查一下Java中的解决方案. 地球上的许多事情,在Java中都能找到完美的解决方案. FtpServer是apache MINA项目的一个子项目,它实现了一个ft ...
- tkinter Canvas画图片大坑总结
一.ImportError: cannot import name '_imagingtk' 问题描述 使用tkinter画pillow生成的图片时,在tkinter中抛出此异常. 解决方案 pip ...
- 配置Windows server 2008文件同步[转]
众所周知,Linux系统可以用rsync来实现文件或目录的同步,windows系统下也一样可以.我们现在就用cwRsync来实现windows server 2008系统下的文件同步. 一.系统环境 ...
- oracle导表小结
事件描述:从A主机oracle服务器导出.sql文件到B主机,发现1.导入存在乱码 2.提示USERS表空没有权限(A B主机均为window系统) 1.针对第一点乱码 首先确认系统的默认字符编码GB ...
- php model与json_encode/json_decode
常用于model的操作,看看就知道了 <?php class UserModel { var $user_id = 0; var $user_name = ''; var $user_email ...
- 安装ubuntu和windows双系统后,如何修改默认启动项
在安装了Ubuntu16.04系统之后,系统会默认自启动Ubuntu16.04,而我们大多数情况下可能都在使用windows系统,不修改默认设置,不经意间便会启动了Ubuntu16.04,通过我的经历 ...