Eu tenho que recompilar se eu quiser mudar '--prefix'?

3

Ao instalar o emacs 24.5 compilando sua origem, executo ./config --prefix=/usr e, em seguida, make e, em seguida, sudo checkinstall , que cria um pacote deb e instala os arquivos binários em /usr .

Agora, gostaria de alterar o diretório de instalação para /usr/local . Eu me pergunto se devo fazer os passos novamente, incluindo compilar? Ou você me recomenda para fazer isso?

O pacote deb está associado a /usr ? Não há como alterá-lo para vincular-se a /usr/local ?

    
por Tim 23.04.2015 / 00:59

1 resposta

2

Resposta curta: você deve recompilar

Resposta longa:

Você não precisa recompilar depois de alterar o prefixo de /usr para /usr/local com ./configure , mas como o emacs usa o prefixo em nomes de caminho incorporados no executável (como /usr/lib/emacs/24.5/i686-pc-linux-gnu e /usr/share/emacs/24.5/etc ; veja src/epaths.h ), alguns arquivos que o emacs lê em tempo de execução não serão encontrados, a menos que

  • você recompila o emacs (recomendado)
  • antes de executar o emacs, você define e exporta variáveis de ambiente, como EMACSDATA , EMACSDOC e EMACSPATH , para substituir os nomes de caminhos internos incorretos.
  • você cria links simbólicos em vários lugares em /usr para apontar para vários locais em /usr/local , de modo que os nomes de caminho internos incorretos sejam resolvidos para os novos locais.

A execução de checkinstall para monitorar o procedimento make install e gerar um pacote .deb composto por todos os arquivos instalados não atenua nada disso; o binário do emacs ainda conterá nomes de caminho incorretos.

    
por 23.04.2015 / 03:56