SWIG (Simplified Wrapper and Interface Generator) er en kompilator som integrerer C og C++ med språk inkludert Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua, Octave, R, 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.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.0 plattform.
Nedlasting (HTTP): https://downloads.sourceforge.net/swig/swig-4.1.1.tar.gz
Nedlasting MD5 sum: c7d55a1bca26752f3846c85b43c1a69c
Nedlastingsstørrelse: 8.2 MB
Estimert diskplass som kreves: 82 MB (2.1 GB med tester)
Estimert byggetid: 0.1 SBU (legg til 7,8 SBU for tester; begge bruker parallellisme=4)
Boost-1.83.0 for tester, og alle de nevnte språkene i innledningen, som kjøretidsavhengigheter
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 -k check TCL_INCLUDE=. 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 && install -v -m755 -d /usr/share/doc/swig-4.1.1 && cp -v -R Doc/* /usr/share/doc/swig-4.1.1
--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.