cargo-c-0.10.20

Introdução ao cargo-c

O pacote cargo-c cria um sub comando cargo para construir e instalar bibliotecas dinâmicas e estáticas compatíveis com C-ABI.

[Nota]

Nota

Esse pacote é conhecido por construir e funcionar adequadamente usando-se uma plataforma LFS 13.0.

Informação do Pacote

Dependências do cargo-c

Exigidas

rustc-1.93.1

Recomendadas

[Nota]

Nota

Uma conexão com a Internet é necessária para se construir esse pacote. A loja de certificados do sistema possivelmente precise estar configurada com make-ca-1.16.1 antes de se construir esse pacote.

Instalação do cargo-c

Primeiro, baixe um arquivo para garantir que cargo use as versões de dependência especificadas pelos(as) desenvolvedores(as) do fluxo de desenvolvimento quando essa versão cargo-c (0.10.20) foi lançada. Sem isso, as versões mais recentes das dependências seriam usadas e elas poderiam causar quebras:

curl -fLO https://github.com/lu-zero/cargo-c/releases/download/v0.10.20/Cargo.lock
[Nota]

Nota

Normalmente, nós colocaríamos essa transferência em uma seção Transferências Adicionais. Mas, nesse caso, não podemos dizer o nome e a versão do pacote a partir do nome do arquivo Cargo.lock, de forma que é melhor não colocar o arquivo ambiguamente nomeado fora do diretório cargo-c-0.10.20. Nós usamos curl aqui porque o pacote cURL-8.18.0 deveria ter sido instalado como uma dependência exigida do rustc-1.93.1.

A soma de verificação MD5 do arquivo deveria ser 021854be3ef40003288171a6c5c65181.

Instale cargo-c executando os seguintes comandos:

export LIBSSH2_SYS_USE_PKG_CONFIG=1    &&
export LIBSQLITE3_SYS_USE_PKG_CONFIG=1 &&

cargo build --release

Para testar os resultados, emita: cargo test --release.

Agora, como o(a) usuário(a) root:

install -vm755 target/release/cargo-{capi,cbuild,cinstall,ctest} /usr/bin/

Finalmente, desconfigure as variáveis exportadas de ambiente:

unset LIB{SSH2,SQLITE3}_SYS_USE_PKG_CONFIG

Explicações do Comando

export LIBSSH2_SYS_USE_PKG_CONFIG=1: Permite que cargo se lincar à libssh2 do sistema. Omita esse comando se você não tiver instalado libssh2-1.11.1.

export LIBSQLITE3_SYS_USE_PKG_CONFIG=1: Permite que cargo se linque ao sqlite do sistema.

Conteúdo

Aplicativos Instalados: cargo-capi, cargo-cbuild, cargo-cinstall e cargo-ctest
Bibliotecas Instaladas: Nenhum(a)
Diretórios Instalados: Nenhum(a)