Compreendendo o comando PKG-Config Linux

Compreendendo o comando PKG-Config Linux
“O PKG-Config é uma ferramenta útil para compilar bibliotecas e aplicativos, especialmente para desenvolvedores. Ele atua como um ajudante para garantir que as opções corretas do compilador sejam inseridas na linha de comando com facilidade em vez de valores de codificação, como onde localizar diferentes bibliotecas.

O PKG-Config é um software livre que suporta plataformas diferentes, incluindo sistemas do tipo Unix, Windows, Linux e Mac OS X. Para usar PKG-Config, você só precisa de glib ou uma biblioteca e compilador em funcionamento. Vejamos o uso comum e entendem mais pkg-config nas seções abaixo.”

Instalando PKG-Config

Você pode instalar o PKG-Config no banco de dados APT:

Primeiro, atualize o banco de dados APT.

Atualização $ sudo apt-get


Em seguida, instale PKG-Config.

$ sudo apt-get install -y pkg-config

Descrição PKG-Config

O PKG-Config é uma ferramenta auxiliar que coleta principalmente os metadados sobre bibliotecas instaladas em sistemas de computador e os fornece a um usuário para fácil montar e integração. Cada sistema possui bibliotecas diferentes instaladas e compilar e vincular as bibliotecas exigem o uso de pkg-config.

Além disso, a instalação do PKG-Config ao lado de diferentes pacotes facilita a adoção de APIs no caso de desenvolvedores. Para ser preciso, o PKG-Config funciona, fornecendo detalhes necessários para compilar e vincular programas a diferentes bibliotecas. Portanto, ele busca os metadados sobre as bibliotecas em vez de sua codificação dura no terminal.

Exemplos de uso de pkg-config

Os arquivos de metadados que o pkg-config recupera informações de ter um .Extensão do PC e o nome especificado no comando é o arquivo de metadados.

1. Imprima os sinalizadores de link

O -Libs A opção é especificada para exibir os sinalizadores de link associados a um determinado pacote. Em nosso exemplo, usaremos o OpenEncv Biblioteca C ++.

$ pkg-config opencv4--libs

Os sinalizadores de link de saída exibidos são:

2. Imprima sinalizadores compilados

O -cflags Imprime os sinalizadores de compilação e o pré-processador associado necessário para compilar um pacote mais os sinalizadores para suas dependências.

$ PKG-CONFIG OPENCV4-CFLAGS

3. Obtenha uma versão da biblioteca

Você pode verificar a versão de uma biblioteca usando o -modversion bandeira.

$ pkg-config opencv4-Modversão

4. Erros de impressão

Você pode imprimir uma mensagem de erro, como uma dependência ou módulos ausentes, usando o comando:

$ PKG-CONFIG OPENCV4-Print-Errors

Para imprimir erros no stdout em vez do stderr padrão, use o -erros para stdout opção em vez do -erros de impressão.

5. Exibir variáveis ​​em um pacote

Para ver todas as variáveis ​​incluídas em um determinado pacote, use o -Variáveis ​​de impressão opção:

$ pkg-config -print-variables OpenCv4

Ele produzirá todos os nomes de qualquer variável contida em seu pacote.

6. Pacotes de lista

Para mostrar todos os pacotes que têm um .Extensão de PC em seu sistema, use o -List-All opção

$ pkg-config -list-all

A saída contém todos os pacotes listados no caminho da variável pkg_config_path.

7. Obtenha valor variável

Você pode obter o valor de uma variável declarada em um pacote .Arquivo PC. Use o -variável = [variável-name] [nome da embalagem] Como no exemplo abaixo.

$ pkg-config --variable = libdir Opencv4

8. Defina variável

Você pode definir um valor variável global para um .Arquivo PC com pkg-config. Por exemplo, para declarar uma variável nomeada prefixo na nossa OpenEncv Biblioteca, podemos usar o comando:

$ PKG-CONFIG-DEFINE-VARIÁVEL = prefixo =/amostra --Variable = prefixo OpenCv4

9. Outras opções

-ajuda: Ele abre a mensagem de ajuda para o pkg-config.

-depurar: Mostra a informação de depuração.

-estático: Ele exibe bibliotecas com vinculação estática, incluindo bibliotecas privadas.

Formato de arquivos PKG-Config

Se você tem um módulo, no nosso caso nomeado amostra, O módulo terá um .Arquivo PC que contém seus metadados.

Existe um formato específico usado com os módulos. Além disso, um módulo possui palavras -chave específicas, incluindo:

Nome: Representa o nome da biblioteca ou pacote fornecido. No nosso caso, é um amostra.

Descrição: Representa uma descrição da biblioteca ou pacote.

Versão: As bibliotecas têm versões diferentes, e a versão é especificada usando esta palavra -chave.

URL: O URL links para um local externo para baixar a biblioteca ou obter mais detalhes sobre seu uso.

Requer: Se o pacote exigir outros pacotes, eles serão especificados aqui.

Libs: os sinalizadores de link para o pacote

Cflags: as bandeiras do compilador associadas ao pacote.

Conflitos: Ele destaca todos os pacotes que provavelmente entrarão em conflito com ele.

Requer.privado Representa os pacotes privados necessários não disponíveis para outros aplicativos.

Conclusão

O comando PKG-Config Linux oferece muitos casos de uso e você pode obter mais detalhes sobre a ferramenta de sua mangueira. Cobrimos a maioria de seus casos de uso comuns para ajudá -lo a extrair confortavelmente detalhes de bibliotecas e pacotes. É isso, pessoal!