.A

Arquivo A

Unix/Linux Static Library (ar archive)
Fazer uma pergunta
RESPOSTA RÁPIDA

Um arquivo .a é uma biblioteca estática usada no Unix, Linux e macOS. É um arquivo no formato ar contendo arquivos de objeto compilados que o vinculador (linker) copia para o seu programa no momento da compilação. Você não o abre como um documento - inspecione-o com «ar t lib.a» (listar membros) ou «nm lib.a» (listar símbolos). Um pequeno número de compiladores Ada também usa .a para código-fonte; se o arquivo for texto simples, este é o caso.

Desenvolvedor: Unix lineage (ar archiver); GNU binutils on Linux Categoria: Arquivos de Desenvolvedor Padrão aberto MIME: application/x-archive
ABRE EM Windows macOS Linux
Relacionado: .DO · .MD · .HEX · .XSD

Nesta página

19k+ extensões indexadas
Última revisão em Sep 10, 2026

Não tem certeza do que é seu arquivo?

Arraste qualquer arquivo para o nosso identificador - lemos apenas os primeiros bytes para nomear o formato.

Identificar um arquivo

O que é o formato de ficheiro A?

Arquivos .a contêm bibliotecas de sistema usadas por desenvolvedores de software. Tais arquivos são comumente encontrados em sistemas do tipo Unix - incluindo Linux e macOS - enquanto sistemas Microsoft Windows usam arquivos .LIB para o mesmo propósito. Arquivos .a fornecem funções compiladas e cabeçalhos que podem ser referenciados por arquivos de origem. Bibliotecas com uma extensão .a são comumente referidas como bibliotecas estáticas.

Um arquivo .a é tecnicamente um arquivo no formato ar: um contêiner que contém um ou mais arquivos de objeto compilados (.o). No Linux, os membros são arquivos .o no formato ELF; no macOS, são objetos Mach-O. Todo arquivo .a começa com a assinatura ASCII de 8 bytes !<arch> seguida por uma quebra de linha, tornando-o reconhecível por ferramentas de inspeção de arquivos. Você pode listar o conteúdo do arquivo com ar t libname.a e inspecionar símbolos exportados com nm libname.a.

Programas de computador usam dois tipos de bibliotecas de recursos: bibliotecas estáticas e bibliotecas dinâmicas. Bibliotecas estáticas (.lib ou .a) são tipicamente maiores que as dinâmicas porque seu código é compilado diretamente no programa de destino no momento da vinculação. Bibliotecas dinâmicas - arquivos .SO no Linux, .dylib no macOS - são conectadas a um determinado programa após sua execução ou no meio da execução do programa. Desenvolvedores de programas podem personalizar seu código para trabalhar com várias bibliotecas vinculadas dinamicamente.

A utilidade ar (parte do GNU Binutils no Linux) é a ferramenta padrão para criar e manter arquivos .a. Como o vinculador extrai apenas os arquivos de objeto de que precisa, o código não utilizado de uma biblioteca estática não é incluído no executável final.

Segurança e proteção

RISCO: LOW

Um .a consiste em dados de tempo de compilação, não algo que o SO executa, portanto oferece pouco risco direto aos usuários finais. Para desenvolvedores, a preocupação é a confiança na cadeia de suprimentos: uma biblioteca estática maliciosa ou adulterada vincula seu código diretamente ao seu programa, portanto use arquivos .a apenas de fontes de SDK confiáveis e verifique somas de verificação/assinaturas. Um .a de código-fonte Ada é texto simples e inofensivo de abrir.

Detalhes do formato

em resumo
NOME COMPLETOUnix/Linux Static Library (ar archive)
DESENVOLVEDORUnix lineage (ar archiver); GNU binutils on Linuxdesde ar archive format from early Unix (1970s); standard static-library extension on Unix/Linux/macOS
TIPO MIMEapplication/x-archive
TIPOarquivo no formato ar de arquivos de objeto compilados (membros ELF/Mach-O .o)
PADRÃOAberto · livre de royalties
RELACIONADO.do.md.hex.xsd
Esta extensão também é usada por…
  • Arquivo de código-fonte Ada - Alguns compiladores/projetos Ada usam .a (e .ada/.adb/.ads) para código-fonte Ada em texto simples - este é o significado que o banco de dados legado registrou, mas é muito menos comum do que a biblioteca estática.
MAGIC BYTES · ASSINATURA DO ARQUIVO
OFFSET
0001020304050607
HEX
213C617263683E0A
ASCII
!<arch>·
Uma biblioteca estática .a é um arquivo no formato ar e começa com a assinatura de 8 bytes «!<arch>\n» (21 3C 61 72 63 68 3E 0A). Seus membros são arquivos de objeto compilados (ELF .o no Linux, Mach-O no macOS). Esta é a mesma família de arquivos que um .lib do Windows. (Um arquivo de código-fonte Ada, o outro significado de «.a», é texto simples sem assinatura.)

Programas que abrem arquivos A

Windows2 apps
Microsoft Visual Studio Freemium O VS usa .lib, não o .a do Unix. Útil apenas se o .a for código-fonte Ada (editar como texto) ou via WSL/MinGW para compilações cruzadas - não é um abridor nativo.
7-Zip Código aberto Abra o .a como um arquivo compactado para navegar/extrair seus membros de objeto (é um arquivo ar). Compilar contra ele requer um conjunto de ferramentas compatível (MinGW/WSL).
macOS2 apps
ar / nm (Xcode command line tools) Gratuito Mesmo conjunto de ferramentas: «ar t lib.a» / «nm lib.a». Os membros são objetos Mach-O. Instale com «xcode-select --install».
BBEdit / TextEdit Freemium Apenas para arquivos .a de código-fonte Ada (also_used_by) - abra como texto simples. Uma biblioteca estática binária parecerá lixo eletrônico.
Linux3 apps
binutils (ar / nm / objdump) Código aberto «ar t libfoo.a» lista membros; «nm libfoo.a» lista símbolos; «ar x libfoo.a» extrai os arquivos .o. Um .a é vinculado, não aberto.
GCC / Clang (linker) Código aberto Vincule contra ele durante a compilação: «gcc main.c -L. -lfoo» puxa o libfoo.a para dentro do executável.
GVim / any text editor Código aberto Apenas se o .a for realmente texto de FONTE Ada (o significado em also_used_by) - então edite-o como qualquer arquivo de código-fonte.

Detalhes técnicos

especificação profunda
Assinatura do arquivo«!<arch>\n» (hex: 21 3C 61 72 63 68 3E 0A) no deslocamento de byte 0
Formato de arquivoar (Unix Archiver) - mesmo formato de contêiner em sistemas Linux, macOS e BSD
Tipo MIMEapplication/x-archive
Tipo de arquivo membro (Linux)Arquivos de objeto relocáveis ELF (.o)
Tipo de arquivo membro (macOS)Arquivos de objeto relocáveis Mach-O (.o)
Tamanho do cabeçalho por membro60 bytes - campos ASCII: nome (16 B), timestamp (12 B), UID (6 B), GID (6 B), modo (8 B), tamanho (10 B), marcador de fim (2 B)
Membro de índice de símbolosO GNU ar usa um membro chamado «/»; o BSD/macOS ar usa «__SYMDEF» - mapeia nomes de símbolos para deslocamentos de membros para vinculação rápida
Convenção de nomenclaturalib<nome>.a - ex: libz.a, libssl.a, libpthread.a; o prefixo «lib» é exigido pela flag -l do vinculador
CompressãoNenhuma - os arquivos de objeto membros são armazenados literalmente, sem compressão
Comportamento em tempo de vinculaçãoO vinculador extrai apenas os membros .o que satisfazem símbolos não resolvidos; membros não utilizados não são incluídos no executável de saída
Ferramenta de criação padrãoar (GNU Binutils no Linux; LLVM ar / BSD ar no macOS); invocado como: ar rcs libname.a file1.o file2.o
Ferramenta de inspeção de símbolosnm - lista símbolos exportados, indefinidos e locais; ex: nm libname.a
Ferramenta de inspeção de conteúdoar t libname.a lista membros; ar x libname.a extrai-os; objdump / otool descompila o código do membro
Equivalente no WindowsBiblioteca estática .lib (formato COFF/PE); compiladores cruzados para Windows, como o MinGW, também produzem arquivos .a
Faixa de tamanho de arquivo típicaVaria de alguns KB (pequena biblioteca de utilitários) a centenas de MB (ex: libclang_rt.a ou um libc.a completo)
Lançadoar archive format from early Unix (1970s); standard static-library extension on Unix/Linux/macOS
Padrão abertoSim · livre de royalties
Especificaçãoen.wikipedia.org

Conversões de A

Perguntas e Respostas da Comunidade

perguntado por usuários
Faça uma pergunta rápida
Obtenha ajuda de pessoas que trabalham com arquivos A. Seja específico - inclua seu sistema e a versão do software.
Não é necessário criar conta · respostas geralmente em um dia

Ainda não há perguntas - seja o primeiro a perguntar sobre arquivos A.

Perguntas frequentes

O que é um arquivo .a?
No Linux/macOS, é uma biblioteca estática - um «arquivo» (formato ar) de arquivos de objeto compilados que o vinculador copia para o seu programa no momento da compilação. O equivalente no Windows é o .lib. (Alguns compiladores Ada também usam .a para código-fonte.)
Como abro um arquivo .a?
Você não o abre como um documento - o vinculador o utiliza durante a compilação. Para inspecioná-lo, execute «ar t lib.a» para listar os membros e «nm lib.a» para listar os símbolos. Se o .a for, na verdade, um código-fonte Ada, abra-o em um editor de texto.
Qual é a diferença entre .a e .so?
Uma biblioteca estática (.a) é incorporada ao seu executável no momento da compilação, portanto não há dependência em tempo de execução. Uma biblioteca compartilhada (.so no Linux, .dylib no macOS) é carregada separadamente em tempo de execução e compartilhada entre programas.
Um .a é o mesmo que um .lib do Windows?
Eles compartilham o formato de arquivo ar, mas contêm tipos de objetos diferentes (ELF/Mach-O vs COFF), portanto não são intercambiáveis. Você não pode usar um .a do Linux no Windows apenas renomeando-o - recompile a partir do código-fonte para a plataforma de destino.
Como extraio os arquivos .o de um .a?
Execute «ar x libfoo.a» (binutils) para extrair seus membros de objeto, ou abra o .a no 7-Zip, já que ele é um arquivo ar.
Meu arquivo .a é texto, não uma biblioteca - por quê?
Então trata-se do outro significado de .a: código-fonte Ada. Alguns compiladores Ada usam .a (junto com .ada/.adb/.ads). Abra-o em qualquer editor de texto ou compile-o com um conjunto de ferramentas GNAT/Ada.

Referências

1Wikipedia - ar (Unix) archive formaten.wikipedia.org
2GNU binutils - ar documentationsourceware.org

Continue explorando

em todo o banco de dados

Principais extensões desta semana

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.MDMarkdown Document
4.BCBitComet Incomplete Download File
5.PARTPartial Download File
6.BINCD/DVD Disc Image (BIN/CUE)
7.EXEWindows Executable (Portable Executable)
8.NOMEDIAAndroid No-Media Marker File
9.AVIFAV1 Image File Format (AVIF)
10.RPMSGRestricted Permission Message

Extensões relacionadas

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Ferramentas de arquivo gratuitas

Um identificador de arquivos e conversor de imagens no navegador - tudo funciona no seu dispositivo.

Abrir a caixa de ferramentas

Navegar por extensões de arquivo A-Z