最近因为系统自带的VIM版本太低,导致很多插件无法使用,因此决定升级一下VIM到VIM7.4,下载代码后开始编译安装,谁知道在make的时候出现了下面的错误。

checking size of off_t... configure: error: in `/tmp/vim74/src':
configure: error: cannot compute sizeof (off_t)
See `config.log' for more details.

网上查找一番,说是因为编译时缺少iconv的相关lib,需要安装iconvlib,而本地which iconv可以看到机器上是装有iconv的(which iconv输出结果为:/usr/local/bin/iconv)。如果你的机器也安装了iconv,那么接着往下看,否则先安装下再接着看。

这个问题的原因是linux在查找动态链接库时,忽视了/usr/local/lib中一系列*.so,将其添加到配置文件中,就可以解决。

解决办法(有root权限)

1、打开/etc/ld.so.conf这个配置文件

2、把下面这行内容添加进去

/usr/local/lib

3、保存文件,执行命令:/sbin/ldconfig

解决办法(没有root权限)

对于非root用户来说,/etc/ld.so.conf是read-only的,想要解决这个问题也是有办法的。在vim74目录下先执行如下命令:

export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH // 为编译器设定额外的搜索路径

原理基本类似,修改ld.so.conf的根本原因只是为了让编译器在make过程中去对应的路径下寻找依赖,这里直接指定搜索路径,是一个效果。

接下来,再make && make install 就正常了。

转载请注明:知识蚂蚁 » 编译安装Vim 7.4,编译错误error: cannot compute sizeof (off_t)解决方法

我来说说

(便于我们更好的交流)

有不明白的地方欢迎留言哦~
取消