Como diferenciar entre dependências de compilação e dependências de uso?

1

Algumas dependências de pacotes são necessárias apenas para compilação, enquanto outras são necessárias para uso real. Por exemplo, eu sei que net-misc/unison requer dev-lang/ocaml apenas para compilação, enquanto sua sys-libs/glibc de dependência é (também) para uso. Mas como se pode realmente descobrir a diferença?

    
por Tobias Kienzler 25.11.2013 / 11:27

1 resposta

2

O Gentoo é um pouco especial ...; -)

Dependerá da fonte. Se você precisar de alguma ferramenta especial - awk, sed, flex, ... - para processar / gerar alguma parte do código-fonte do programa, então você precisará dessas ferramentas para compilar / construir ... No entanto, uma vez o programa é construído - ie. você tem algum arquivo executável - essas ferramentas não são necessárias para usar o programa.

O mesmo vale para programas em que partes são escritas em idiomas incomuns. Se partes do programa são escritas em Ocaml, Ada ou Pascal; você precisará de compiladores adequados para esses idiomas instalados. Uma vez que eles são compilados em arquivos-objeto e vinculados a um executável finalizado, somente as bibliotecas compartilhadas são necessárias - a menos que tenham sido construídas com bibliotecas estáticas, caso em que nem mesmo as bibliotecas serão necessárias.

Mesmo parte da documentação pode às vezes precisar de ferramentas e programas extras instalados - como algo escrito em LaTeX e, portanto, precisando que o LaTeX seja criado. Afinal, até as páginas de manual simples precisam que a TROFF interpele a linguagem de marcação usada.

Para outras distros além do Gentoo - distros onde você não constrói tudo sozinho - você não precisa se preocupar com as ferramentas necessárias durante a construção, já que os pacotes são pré-construídos.

    
por 25.11.2013 / 13:33