CenOS6.5下源码安装vim-7.4
1.【下载】
vim-7.4下载地址:
ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2
2.【解压】
tar jxvf vim-7.4.tar.bz2
之后,源文件就在这个压缩包下面的src目录里面
最好只在这个目录下进行configure,make和make install,不然会报错
切到src中:
3.【configure配置】
sudo ./configure
\ --with-features=huge #支持最大特性
\ --enable-multibyte #支持多字节
\ --prefix=/usr/local/vim74 #设置安装位置
这个configure时,会报错,如下图:

【安装依赖库】
这里还差一个库,没装,摆渡之后,发现别人都是用apt-get安装的
我有捣鼓下了apt-get,没装好
还是找yum版的把,如图

谁知道devel后面是1还是l啊!!
yum install ncurses-devel
4.【编译、安装】
make
make install
然后就装好了
5.【建立软链接】
由于源码安装都是安装到了一个文件夹下,在搜索目录中并没有二进制文件,要将路径添加到搜索路径中
建立软链接:
sudo ln -s /usr/local/vim74/bin/vim /usr/local/bin/vim
6.【配置.vimrc】
由于我是源码安装的,所以在/etc/中并没有一个叫vim的文件夹,我又想vim的配置设为全局的
于是在/etc/下建立了一个vim文件夹,在该文件夹下建立一个vimrc的文件,然写进配置语句,
发现没起作用,无奈只好在用户主目录下面配置.vimrc文件
.vimrc中语句如下:
===============================================
1 syntax on #设置高亮
2 set nu #显式行号
3 set tabstop=4 #设置tabstop为4
4 set ruler #设置标尺,状态行
5 set cursorline #高亮显式当前行
6 set nobackup #不要备份文件
7 set backupcopy=yes #设置覆盖备份
8 set backspace=2 #可以用退格键删除
9 filetype on #监测文件类型
10 set fileencodings=utf-8,gbk #设置文件编码,识别中文
11 set hlsearch #设置高亮搜索
12 set shiftwidth=4 #自动缩进长度为4格
=================================================
7.【安装小脚本】
写了个小脚本,一键安装
=======================================================
1#!/bin/bash
2
3 yum install ncurses-devel
4 tar jxvf ./softwares/vim-7.4.tar.bz2
5 cd vim74/src
6 ./configure --with-features=huge --enable-multibyte --prefix=/usr/local/vim74
7 make
8 make install
9 echo 'VIM is installed, enjoy!'
============================================================
8.【补充知识make】
在安装的时候不懂make的具体用法,摆渡了一下,转自:
http://www.cnblogs.com/hnrainll/archive/2011/06/08/2075052.html
make clean仅仅是清除之前编译的可执行文件及配置文件。
而make distclean要清除所有生成的文件。
Makefile
在符合GNU Makefiel惯例的Makefile中,包含了一些基本的预先定义的操作:
make
根据Makefile编译源代码,连接,生成目标文件,可执行文件。
make clean
清除上次的make命令所产生的object文件(后缀为".o"的文件)及可执行文件。
make install
将编译成功的可执行文件安装到系统目录中,一般为/usr/local/bin目录。
make dist
产生发布软件包文件(即distribution package)。这个命令将会将可执行文件及相关文件打包成一个tar.gz压缩的文件用来作为发布软件的软件包。
它会在当前目录下生成一个名字类似"PACKAGE-VERSION.tar.gz"的文件。PACKAGE和VERSION,是我们在configure.in中定义的AM_INIT_AUTOMAKE(PACKAGE, VERSION)。
make distcheck
生成发布软件包并对其进行测试检查,以确定发布包的正确性。这个操作将自动把压缩包文件解开,然后执行configure命令,并且执行make,来确认编译不出现错误,最后提示你软件包已经准备好,可以发布了。
make distclean类似make clean,但同时也将configure生成的文件全部删除掉,包括Makefile。
CenOS6.5下源码安装vim-7.4的更多相关文章
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...
- CentOS7 下源码安装 python3
CentOS 7 下源码安装 python3 在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下: 1. 首先安装python3.6可能使用的依 ...
- CentOS7.3环境下源码安装httpd
CentOS7.3环境下源码安装httpd 本文在CentOS7.3下,源码安装apache服务httpd2.4. 1.下载好源码安装包 [root@localhost ~]#ll total 625 ...
- CentOS6.5下源码安装多个MySQL实例及复制搭建
多实例安装本节是在CentOS6.5下源码安装MySQL5.6.35的基础上,在同一台机器增加一个MySQL实例.参考Centos中安装多个mysql数据的配置实例,安装目录为/usr/local/m ...
- CentOS 7下源码安装MySQL 5.7
网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...
- lnux下源码安装MySQL 5.6
nux下源码安装MySQL 5.6 说明:本文是我自己测试的MySQL5.6源码安装,经本人亲自实践,完全可用,另在5.6之前的版本也是可以按照本文源码安装的.我是在两台linux下一台安装5.5,另 ...
- CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一.准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util ...
- 在ConoHa上Centos7环境下源码安装部署LNMP
本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...
随机推荐
- eclipse里面的时间错误,比电脑系统时间慢了8个小时
eclipse里面的时间错误,比电脑系统时间慢了8个小时 解决办法: 打开<eclipse安装目录>/eclipse.ini文件 在文件末尾追加 -Duser.timezone=Asia/ ...
- oracle中number对应java数据类型
本文转自:http://blog.csdn.net/ludongshun2016/article/details/71453125 数据库中为number类型的字段,在Java类型中对应的有Integ ...
- Java实现文件自动打包成zip并下载的代码
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java. ...
- Google Guice之作用域
默认情况下,Guice获取一个实例时.每次都会返回一个新的对象. 这个行为能够通过scopes进行配置.Scopes同意你复用实例: 应用整个生命周期(@Singleton),会话(@Session) ...
- MIME类型释义--MIME类型大全--web.xml中有关<mime-mapping>配置说明
最早的HTTP协议中,并没有附加的数据类型信息,所有传送的数据都被客户程序解释为超文本标记语言HTML 文档,而为了支持多媒体数据类型,HTTP协议中就使用了附加在文档之前的MIME数据类型信息来标识 ...
- [Jobdu] 题目1510:替换空格
题目描述: 请实现一个函数,将一个字符串中的空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 输入: 每个输入文件仅包含一组测 ...
- js实现拉伸拖动iframe的具体代码
这篇文章介绍了js实现拉伸拖动iframe的具体代码,有需要的朋友可以参考一下左边iframe放树目录,右边的iframe放index页.拖鼠标同时控制2个iframe的宽高.期待有人能改进.操作方法 ...
- [k8s]subpath解决cm覆盖目录问题
参考 发现cm老覆盖容器原有目录里的内容,后来不得不通过in -s的方式来搞cm, 先将cm挂到/tmp下,然后ln -s文件到指定目录. 后来发现个cm的subpath特性可以解决这个问题 写了bu ...
- CF 366E - Dima and Magic Guitar 最远曼哈顿距离
题目:http://codeforces.com/problemset/problem/366/E 事实上就是找 n * m 矩阵中数字 x 和 数字 y 的最远距离. 方法參照武森的论文<浅谈 ...
- lua连续随机数
号外:惭愧,工作后几乎没有写博客了,其实是有时间的(每周单休),只是厌烦对着屏幕了,还有懒. 现在老板换人了,时间会多点,估计正常就每周双休了,决定还是每周写两篇(不一定是love2d), 写不出就翻 ...