4.4. Criação de bibliotecas estáticas com GCC e ar


A criação de bibliotecas para ligação estática é possível através da conversão de arquivos de objetos em um tipo especial de arquivo.

Nota

A Red Hat desencoraja o uso de ligação estática por razões de segurança. Use links estáticos somente quando necessário, especialmente contra bibliotecas fornecidas pela Red Hat. Veja Seção 3.2, “Ligação estática e dinâmica” para mais detalhes.

Pré-requisitos

Procedimento

  1. Criar arquivos de objetos intermediários com GCC.

    $ gcc -c source_file.c...

    Anexar mais arquivos de origem, se necessário. Os arquivos objeto resultantes compartilham o nome do arquivo, mas use a extensão .o.

  2. Transforme os arquivos objeto em uma biblioteca estática (arquivo) usando a ferramenta ar do pacote binutils.

    $ ar rcs libfoo.a source_file.o...

    O arquivo libfoo.a é criado.

  3. Use o comando nm para inspecionar o arquivo resultante:

    $nm libfoo.a
  4. Copie o arquivo estático da biblioteca para o diretório apropriado.
  5. Ao vincular-se contra a biblioteca, o GCC reconhecerá automaticamente a partir da extensão do nome do arquivo .a que a biblioteca é um arquivo para vínculo estático.

    $ gcc ... -lfoo...

Recursos adicionais

  • Página do manual Linux para ar(1):

    $ homem ar
Red Hat logoGithubRedditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar. Explore nossas atualizações recentes.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja o Blog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

© 2024 Red Hat, Inc.