SWIG-4.2.1

Introduksjon til SWIG

SWIG (Simplified Wrapper and Interface Generator) er en kompilator som integrerer C og C++ med språk inkludert Perl, Python, Tcl, Ruby, PHP, Java, JavaScript, C#, D, Go, Lua, Octave, R, Racket, Scilab, Scheme, og Ocaml. SWIG kan også eksportere parsetreet til Lisp s-expressions og XML.

SWIG leser kommentert C/C++ deklarasjonsfiler og lager innpakningskode (glue kode) for å lage den tilsvarende C/C++ bibliotekene som er tilgjengelige for de oppførte språk, eller for å utvide C/C++ programmer med et skriptspråk.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

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

  • Nedlasting MD5 sum: 7697b443d7845381d64c90ab54d244af

  • Nedlastingsstørrelse: 8.0 MB

  • Estimert diskplass som kreves: 81 MB (1.8 GB med tester)

  • Estimert byggetid: 0.1 SBU (legg til 7.7 SBU for tester; begge bruker parallellisme=4)

SWIG Avhengigheter

Påkrevd

pcre2-10.44

Valgfri

Boost-1.86.0 for tester, og alle de nevnte språkene i innledningen, som kjøretidsavhengigheter

Installasjon av SWIG

Installer SWIG ved å kjøre følgende kommandoer:

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

For å teste resultatene, kjør: PY3=1 make TCL_INCLUDE= -k check. Deaktiveringen av variabelen TCL_INCLUDE er nødvendig siden den ikke er riktig satt av configure. Testene utføres kun for språk installert på maskinen din, så diskplass og SBU-verdier gitt for testene kan variere, og bør betraktes som bare antakelser av størrelser. I følge SWIG sin dokumentasjon, svikt hos noen tester bør ikke anses som skadelige. Go testene er buggy og kan generere mye meningsløst utdata.

Nå, som root bruker:

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

Parameterforklaringer

--without-maximum-compile-warnings: deaktiverer kompilator ansi samsvarshåndhevelse, som utløser feil i Lua deklarasjonsfiler (startet med Lua 5.3).

--without-<language>: gjør det mulig å deaktivere oppbygging av tester og eksempler for <language>, men alle språk evner til SWIG er alltid bygget. Denne bryteren brukes til JavaScript fordi SWIG implementeringen er ufullstendig og mange tester mislykkes på grunn av API endringer i Node-20.

Innhold

Installerte Programmer: swig og ccache-swig
Installert Bibliotek: Ingen
Installerte Mapper: /usr/share/doc/swig-4.2.1 og /usr/share/swig

Korte Beskrivelser

swig

tar en grensesnittfil som inneholder C/C++ deklarasjoner og SWIG spesielle instruksjoner, og genererer tilsvarende innpakningskode nødvendig for å bygge utvidelsesmoduler

ccache-swig

er en kompilatorhurtiglager, som øker hastigheten på re-kompilering av C/C++/SWIG kode