Como fornecer um sufixo para o Vim 8 ao criar no Linux

2

Estou tentando construir o Vim 8.0 no Ubuntu 16.04.1 LTS. configure e make são executados sem erros, no entanto, ignoram o parâmetro --program-suffix :

[local vim repo]/configure --program-suffix=8 --with-features=big

Eu pretendia construir o Vim 8.0 paralelamente à minha configuração estável com o sufixo "8", então deve haver um binário vim8 em /usr/local/bin/ .

Alguma ideia?

    
por Thomas R 12.09.2016 / 16:59

2 respostas

2

Eu confirmei este comportamento no CentOS 7.2 com um pull do vim repo hoje (ver 8.0.3); o valor de --program-suffix não foi armazenado. É um campo no arquivo src/auto/configure e depois de executar ./configure deve preencher um campo em src/config.mk , mas não há espaço reservado para ele. Os outros sinalizadores de configuração fornecidos para configure update src/config.mk

Há uma nota no arquivo src/INSTALL no tópico:

If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving configure the option --program-prefix=PREFIX or --program-suffix=SUFFIX

Eu acho que ignorar o argumento e não relatar é como os desenvolvedores de vim decidiram 'não suportar' essa opção no branch master.

Para impedir a substituição de arquivos da sua instalação 7.x, sugiro instalá-lo em outro diretório completamente até que você faça uma transição completa; Se você combinar essa opção com a renomeação do vim usando o sinalizador sugerido @pibarnas, você poderá isolar a instalação do vim8 inteiramente da instalação existente.

 ./configure --with-features=big --prefix=$HOME --with-vim-name=vim8

Altere $ HOME para qualquer caminho que funcione para você; O que eu sugiro é que, após a instalação, você crie links simbólicos de $ HOME / bin / para / usr / local / sbin /

sudo ln -s /home/<username>/bin/vim8 /usr/local/bin/

Você pode fazer o mesmo com os executáveis do vim relacionados, dependendo do que você construir. Alguns deles não aceitam o nome vim fornecido na configuração, que é outro motivo para usar apenas um diretório de instalação separado.

Para o registro, aqui estão os binários instalados pelo vim. Eu usei diferentes argumentos de configuração; Eu postei isso na parte inferior - apenas no caso de uma tentativa de reproduzir o comando acima não funciona por algum motivo obscuro; abaixo é o que eu realmente usei.

-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

Comando config / build / install do 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
    
por 13.09.2016 / 05:46
1

De acordo com o ./config --help:

- com-vim-name = NAME o que chamar de executável do Vim

No caso:

- com-vim-name = vim8

    
por 12.09.2016 / 21:03