ebooksgratis.com

Project Gutenberg

Contents Listing Alphabetical by Author:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Unknown Other
Contents Listing Alphabetical by Title:
# A B C D E F G H I J K L M N O P Q R S T U V W Y Z Other

Amazon - Audible - Barnes and Noble - Everand - Kobo - Storytel 

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Automake - Wikipédia, a enciclopédia livre

Automake

Origem: Wikipédia, a enciclopédia livre.

  Este artigo é um esboço sobre Informática. Pode ajudar a Wikipédia expandindo-o.
 Automake
The GNU Project
Desenvolvedor
Última versão 1.10 (15 de outubro de 2006)
Sistema Op. Multiplataforma
Gênero Ferramenta de programação
Licença GPL
Website http://sources.redhat.com/automake
Fluxograma do autoconf e automake
Fluxograma do autoconf e automake

GNU Automake é uma ferramenta de programação que produz arquivos makefile portáveis para o uso do programa make, usado na compilação de software. É produzido pela Free Software Foundation como um dos programas GNU, e é parte do GNU build system. Os makefiles produzidos seguem padrões de codificação GNU.

Ele é escrito em linguagem de programação Perl e deve ser usado com o autoconf. Automake contém os seguintes comandos:

  • aclocal
  • automake

aclocal, entretanto, é um programa de propósito geral que pode ser útil para usuários autoconf. O GNU Compiler Collection, por exemplo, usa aclocal mesmo sendo o makefile escrito manualmente.

Como Autoconf, Automake pode ser difícil de lidar porque ele não é inteiramente compatível com versões anteriores. Por exemplo, um projeto criado com automake 1.4 pode não necessariamente funcionar com automake 1.9.

Índice

[editar] Enfoque

Automake tenta facilitar o trabalho de escrever um makefile, utilizando linguagem de alto nível, em contraposição de ter de escrever todo o arquivo manualmente. Ele pede:

  • uma linha que declara o nome do programa a ser construído;
  • uma lista de arquivos fontes;
  • uma lista de opções para comandos de linha a serem passados para o compilador (diretórios onde os arquivos podem ser encontrados);
  • uma lista de opções para comandos de linha a serem passados para o linker (quais bibliotecas o programa utiliza e em que diretórios eles podem ser achados).

Dessa informação, Automake gera um makefile que permite ao usuário:

  • compilar o programa;
  • limpar (isto é, remove os arquivos intermediários da compilação);
  • instala o programa em diretórios padrão;
  • desinstala o programa de onde ele foi instalado;
  • cria um arquivo de distribuição de código (comumente chamado um tarball);
  • testa se esse arquivo é autosuficiente, e em particular se o programa pode ser compilado num diretório outro que não o diretório em que será utilizado.

[editar] Geração de dependências

Automake também gera automaticamente as dependências [1], de modo que quando o arquivo fonte é modificado, o próxima invocação do comando make sabe quais os arquivos fonte precisam recompilação. Se o compilador permitir, Automake tenta fazer um sistema dinâmico de dependências: quando o arquivo fonte é compilado, que dependências de arquivos são atualizadas perguntando ao compilador para regenerar a lista de recompilação. Em outras palavras, traceamento de dependências é o efeito colateral de um processo de compilação. Essa tentativa de evitar o problema com dependências de sistema estáticas, onde as dependências são detectadas somente quando o programador começa a trabalhar no projeto.[2]

In such a case, if a source file gains a new dependency (e.g., if the programmer adds a new #include directive in a C source file), then a discrepancy is introduced between the real dependencies and those that are used by the compilation system. The programmer should then regenerate the dependencies, but runs the risk of forgetting to do so.

In the general case, automake generates dependencies via the bundled depcomp script, which will invoke the compiler appropriately or fall back to makedepend. If the compiler is a sufficiently recent version of gcc, however, automake will inline the dependency generation code to call gcc directly.

[editar] Libtool

Automake pode também ajudar na compilação de bibliotecas gerando automaticamente makefiles que irão invocar o Libtool. O programador é então aliviado de ter de saber como chamar a Libtool diretamente, e o projeto se benefecia do uso de uma ferramenta criação de biblioteca portável.

[editar] Saneando o ambiente de construção

Muitos Autoconf configuram scripts de saída com a mensagem "checking whether build environment is sane..." cedo na fase de configuração. Essa mensagem é o resultado de testes feitos pela macro do Automake: AM_SANITY_CHECK. Ela checa se o arquivo criado no diretório de construção é mais novo que o arquivo fonte do diretório de fontes. Pode falhar em sistemas onde o relógio não é ajustado. Essa macro roda automaticamente de AM_INIT_AUTOMAKE.

[editar] Ver também

  • CMake
  • imake
  • Flowtracer

Referências

  • Gary V. Vaughan, Ben Elliston, Tom Tromey: Gnu Autoconf, Automake, and Libtool, Sams, ISBN 1-57870-190-2

[editar] Ligações externas

Static Wikipedia (no images) - November 2006

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu