Como compilar programas em sistemas Linux quando não tenho privilégios sudo para instalar as dependências dev [duplicadas]

4

Como devo proceder para compilar programas que dependem de bibliotecas cujos pacotes de desenvolvimento (cabeçalhos e outros) não estão pré-instalados no sistema quando não tenho acesso ao sudo?

Neste caso em particular eu tenho o Ubuntu 12.04, mas eu estou esperando por uma solução mais geral, porque parece estranho para mim precisar de privilégios de administrador apenas para instalar os pacotes dev para que eu possa compilar.

    
por Mehrdad 14.08.2014 / 09:40

1 resposta

5

Em sistemas derivados do Debian, você pode obter a fonte (mesmo como usuário não root) usando apt-get source , desde que sources.list tenha algumas entradas deb-src. Caso contrário, fica preso ao fazer o download do repositório de origem do projeto com ferramentas padrão.

Assim que tiver essa fonte, então:

./configure --prefix=/home/me/mysoftware
make
make install

Funcionará para a maioria das distribuições de fontes usando autotools ou similar.

Uma vez feito isso, você desejará configurar as variáveis de ambiente LD_LIBRARY_PATH e PATH no seu perfil.

Quando você configura outras coisas que dependem do software instalado dessa forma, você precisará configurar PKG_CONFIG_PATH, CFLAGS, CXXFLAGS, LDFLAGS e possivelmente usar outros argumentos de configuração para "ajudar" a configurar o caminho de instalação especial.

É claro que pode ser mais fácil abrir um ticket de suporte para alguém com o poder de root.

    
por 14.08.2014 / 09:47

Tags