SWIG (Simplified Wrapper and Interface Generator) is a compiler that integrates C and C++ with languages including Perl, Python, Tcl, Ruby, PHP, Java, C#, D, Go, Lua, Octave, R, Scheme, Ocaml, Modula-3, Common Lisp, and Pike. SWIG can also export its parse tree into Lisp s-expressions and XML.
SWIG reads annotated C/C++ header files and creates wrapper code (glue code) in order to make the corresponding C/C++ libraries available to the listed languages, or to extend C/C++ programs with a scripting language.
This package is known to build and work properly using an LFS-7.7 platform.
Download (HTTP): http://downloads.sourceforge.net/swig/swig-3.0.5.tar.gz
Download MD5 sum: dcb9638324461b9baba8e044fe59031d
Download size: 5.60 MB
Estimated disk space required: 80 MB (up to 1.1 GB for tests)
Estimated build time: 0.4 SBU (22 SBU for tests of Guile, Go, Java, Lua, Perl, PHP, Python 2 and 3, Ruby, and Tcl)
Boost-1.57.0 for tests, and any of the languages mentionned in the introduction, as run-time dependencies
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/swig
Fix an issue with gccgo-4.9.2:
sed -e 's/"\.")/"_")/' -i Source/Modules/go.cxx
Install SWIG by running the following commands:
./configure --prefix=/usr \ --without-clisp \ --without-maximum-compile-warnings && make
To test the results, issue: make -k check. If you have both Python-2.7.9 and Python-3.4.2 installed, only the Python-2 tests are run. You can run test for Python-3 by issuing PY3=1 make check-python-examples followed by PY3=1 make check-python-test-suite. According to SWIG's documentation, the failure of some tests should not be considered harmful.
Now, as the root
user:
make install && install -v -m755 -d /usr/share/doc/swig-3.0.5 && cp -v -R Doc/* /usr/share/doc/swig-3.0.5
--without-maximum-compile-warnings
:
disables compiler ansi conformance enforcement, which triggers
errors in the Lua headers
(starting with Lua 5.3).
--without-<language>
: allows
disabling the building of tests and examples for <language>,
but all the languages capabilities of SWIG are always built. We use it for
Clisp, because the SWIG
implementation is very incomplete and a lot of tests fail.
Last updated on 2015-02-24 00:00:51 -0500