o que fazer depois de instalar manualmente um programa no Linux

1

Como não tenho permissão de administração no servidor Linux, tenho que instalar todo o software com configure , make , make install em um diretório local para evitar a permissão negada.

Por exemplo, farei o seguinte para instalar um programa:

./configure --prefix=/myDir/bin
make
make install

Após a instalação, eu recebo alguns arquivos criados no /myDir/bin , como:

bin/
include/
lib/
lib64/
libexec/
share/

Minha pergunta é depois da instalação, o que devo fazer?

Com algumas pesquisas, acho que para muitos sobre o conjunto LD_LIBRARY_PATH , LIBRARY_PATH , PKG_CONFIG_PATH ... Mas não estou bem claro sobre a funcionalidade dessas configurações.

Qual é a configuração e configuração completa após a instalação?

    
por 宇宙人 17.10.2014 / 14:50

1 resposta

0

A "configuração e configuração completa após a instalação" dependerá do software que você está instalando. O que eu faço é começar com as coisas comuns / mais importantes e adicionar coisas conforme necessário depois:

  • PATH : determina onde procurar por programas. Se você quiser que sua sessão encontre e use aquelas instaladas, você precisa de algo como: export PATH="/myDir/bin:$PATH" em seu perfil. Caso contrário, você terá que ligar, digamos, /myDir/bin/ls a cada vez.

  • LD_LIBRARY_PATH : é usado para controlar quais bibliotecas compartilhadas ( .so files) são usadas ao executar executáveis vinculados dinamicamente. Se não definido, as libs do sistema serão usadas. Se definido, os diretórios para os quais ele aponta serão pesquisados primeiro. Se você instalou os arquivos .so , precisará defini-los para que seus programas o encontrem:
    export LD_LIBRARY_PATH=/myDir/lib

    Esteja ciente de que isso pode afetar os binários do sistema, que agora começarão a usar suas bibliotecas. Se você quiser ser seguro, não o defina globalmente e use scripts de wrapper para executar programas:

    #!/bin/bash
    export LD_LIBRARY_PATH=/myDir/lib
    exec /myDir/bin/firefox "$@"
    

Compilando coisas:

  • CFLAGS / CPPFLAGS : usado pelo gcc / g ++ ao compilar o código-fonte. Defina para informar onde seus cabeçalhos estão: export CFLAGS=-I/myDir/include

  • LDFLAGS : usado pelo gcc ao vincular. Configure-o para informar onde estão suas bibliotecas:
    export LDFLAGS=-L/myDir/lib

Você precisa definir esses dois para configure scripts para encontrar suas bibliotecas. Você também pode usar um arquivo config.site .

  • PKG_CONFIG_PATH : usado por pkg-config para localizar seus arquivos. Normalmente parece em /usr/share/pkgconfig para .pc arquivos. Se você vai estar compilando mais programas que precisam de suas bibliotecas e há coisas em /myDir/share/pkgconfig , você vai querer definir isso também.

O resto que você pode descobrir conforme necessário: man super_duper_prg não funciona? O doc do homem lhe dirá sobre MANPATH .

    
por 17.10.2014 / 20:49