SWIG-4.2.1

Introdução ao SWIG

SWIG (Simplified Wrapper and Interface Generator) é um compilador que integra C e C++ com linguagens incluindo Perl, Python, Tcl, Ruby, PHP, Java, JavaScript, C#, D, Go, Lua, Octave, R, Racket, Scilab, Scheme e Ocaml. SWIG também consegue exportar a árvore de análise dele para s-expressions da Lisp e XML.

"SWIG" lê arquivos anotados de cabeçalho "C/C++" e cria código envólucro (código de cola) para a finalidade de tornar disponíveis as bibliotecas "C/C++" correspondentes para as linguagens listadas ou para estender aplicativos "C/C++" com uma linguagem de "script".

Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.2.

Informação do Pacote

  • Transferência (HTTP): https://downloads.sourceforge.net/swig/swig-4.2.1.tar.gz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: 7697b443d7845381d64c90ab54d244af

  • Tamanho da transferência: 8,0 MB

  • Espaço em disco estimado exigido: 81 MB (1,8 GB com testes)

  • Tempo de construção estimado: 0,1 UPC (adicionar 7,7 UPC para testes; ambos usando paralelismo=4)

Dependências do "SWIG"

Exigidas

pcre2-10.44

Opcionais

"Boost-1.86.0" para testes e quaisquer das linguagens mencionadas na introdução, como dependências de tempo de execução

Instalação do SWIG

Instale "SWIG" executando os seguintes comandos:

./configure --prefix=/usr                     \
            --without-javascript               \
            --without-maximum-compile-warnings &&
make

Para testar os resultados, emita: PY3=1 make TCL_INCLUDE=-k check. A desconfiguração da variável TCL_INCLUDE é necessária pois ela não é configurada corretamente pelo configure. Os testes são executados somente para as linguagens instaladas em tua máquina, de forma que o espaço em disco e os valores de UPC fornecidos para os testes possivelmente variem e deveriam ser considerados como meras ordens de grandeza. De acordo com a documentação do SWIG, a falha em alguns testes não deveria ser considerada prejudicial. Os testes go são defeituosos e possivelmente gerem um monte de saída sem significado.

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

make install &&
cp -v -R Doc -T /usr/share/doc/swig-4.2.1

Explicações do Comando

--without-maximum-compile-warnings: desabilita o compelimento de conformidade "ANSI" do compilador, o que deflagra erros nos cabeçalhos "Lua" (começando com "Lua" 5.3).

--without-<linguagem>: permite desabilitar a construção de testes e exemplos para <linguagem>, mas todas as capacidades de linguagens do SWIG são sempre construídas. Essa chave é usada para JavaScript porque a implementação SWIG está incompleta e muitos testes falham devido a mudanças de API no Node-20.

Conteúdo

Aplicativos Instalados: swig e ccache-swig
Biblioteca Instalada: Nenhum(a)
Diretórios Instalados: /usr/share/doc/swig-4.2.1 e /usr/share/swig

Descrições Curtas

swig

pega um arquivo de interface contendo declarações "C"/"C++" e instruções especiais "SWIG" e gera o código envólucro correspondente necessário para construir módulos de extensão

ccache-swig

é um cache do compilador, que acelera a recompilação de código "C"/"C++"/"SWIG"