我正在尝试在 Ubuntu 16.04.1 LTS 上构建 Vim 8.0,
configure
并且make
运行时没有任何错误,但是它确实忽略了参数--program-suffix
:
[local vim repo]/configure --program-suffix=8 --with-features=big
我打算构建与我的稳定设置并行的 Vim 8.0,并使用后缀“8”,因此应该有一个二进制vim8
文件/usr/local/bin/
。
任何想法?
答案1
我今天从 vim repo(版本 8.0.3)中拉取了文件,确认了 CentOS 7.2 上的这种行为;来自的值--program-suffix
没有被存储。它是文件中的一个字段src/auto/configure
,运行后./configure
应该会填充一个字段,src/config.mk
但没有占位符。提供的其他配置标志用于configure
执行更新src/config.mk
文件中有一条src/INSTALL
关于该主题的注释:
如果软件包支持,您可以通过提供
configure
选项--program-prefix=PREFIX
或--program-suffix=SUFFIX
我猜想忽略该参数并且不报告它是 vim 开发人员决定在主分支中“不支持”此选项的原因。
为了防止可能覆盖 7.x 安装中的文件,我建议将其完全安装到另一个目录,直到完全过渡;如果您将该选项与使用@pibarnas 建议的标志重命名 vim 结合起来,您可以将 vim8 安装与现有安装完全隔离。
./configure --with-features=big --prefix=$HOME --with-vim-name=vim8
将 $HOME 更改为适合您的任何路径;我建议您在安装后创建从 $HOME/bin/ 到 /usr/local/sbin/ 的符号链接
sudo ln -s /home/<username>/bin/vim8 /usr/local/bin/
您可以根据构建的内容对相关的 vim 可执行文件执行相同操作。其中一些文件不采用配置中提供的 vim-name,这是仅使用单独安装目录的另一个原因。
为了记录,以下是 vim 安装的二进制文件。我使用了不同的配置参数;我将其发布在底部 - 以防万一尝试重现上述命令由于某些不为人知的原因而不起作用;下面是我实际使用的。
-rwxr-xr-x 1 root root 143 Sep 12 23:04 gvim8tutor
-rwxr-xr-x 1 root root 19K Sep 12 23:04 xxd
lrwxrwxrwx 1 root root 4 Sep 12 23:04 vim8diff -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 rview -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 rvim8 -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 view -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 ex -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 gvim8diff -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 eview -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 evim8 -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 rgview -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 rgvim8 -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 gview -> vim8
lrwxrwxrwx 1 root root 4 Sep 12 23:04 gvim8 -> vim8
-rwxr-xr-x 1 root root 2.1K Sep 12 23:04 vim8tutor
-rwxr-xr-x 1 root root 2.7M Sep 12 23:04 vim8
Vim 配置/构建/安装命令:
./configure --prefix=$HOME --with-vim-name=vim8 --with-compiledby="argonauts12" --with-features=huge --enable-gui=auto --with-x --enable-rubyinterp --with-ruby-command=/usr/bin/ruby --enable-perlinterp --enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config --enable-fontset --enable-cscope --enable-gtk2-check --enable-gnome-check --enable-fail-if-missing --disable-multibyte && make -j8 && make install
答案2
根据./config --help:
--with-vim-name=NAME 调用 Vim 可执行文件的名称
在这种情况下:
--with-vim-name=vim8