SWIG-4.1.1

Introdução ao SWIG

SWIG ("Simplified Wrapper and Interface Generator") é um compilador que integra "C" e "C++" com linguagens que incluem "Perl", "Python", "Tcl", "Ruby", "PHP", "Java", "C#", "D", "Go", "Lua", "Octave", "R", "Scheme" e "Ocaml". "SWIG" também consegue exportar a árvore analisadora dele para "s-expressions" do "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 adequadamente usando uma plataforma LFS 11.3.

Informação do Pacote

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

  • Transferência (FTP):

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

  • Tamanho da transferência: 8,2 MB

  • Espaço em disco estimado exigido: 82 MB (2,1 GB com os testes)

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

Dependências do "SWIG"

Exigidas

pcre2-10.42

Opcionais

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

Observações de Usuário(a): https://wiki.linuxfromscratch.org/blfs/wiki/swig

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 -k check TCL_INCLUDE=". A desabilitaçã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 sua 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 &&
install -v -m755 -d /usr/share/doc/swig-4.1.1 &&
cp -v -R Doc/* /usr/share/doc/swig-4.1.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.

Conteúdo

Aplicativos Instalados: swig e ccache-swig
Biblioteca Instalada: Nenhum(a)
Diretórios Instalados: /usr/share/doc/swig-4.1.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"