Difference between revisions of "SWIG"
(2 intermediate revisions by 2 users not shown) | |||
Line 20: | Line 20: | ||
* [[PHP]] | * [[PHP]] | ||
* [[Objective Caml]] | * [[Objective Caml]] | ||
+ | * [[Octave]] | ||
* [[Chicken]] | * [[Chicken]] | ||
* [[Lua]] | * [[Lua]] | ||
+ | * [[R]] | ||
== Test Suite Note == | == Test Suite Note == | ||
Line 77: | Line 79: | ||
mv -v /usr/bin/swig{,-64} && | mv -v /usr/bin/swig{,-64} && | ||
ln -sfv multiarch_wrapper /usr/bin/swig | ln -sfv multiarch_wrapper /usr/bin/swig | ||
+ | |||
+ | [[Category:Programming]] |
Latest revision as of 16:02, 19 March 2009
Download Source: | http://prdownloads.sourceforge.net/swig/swig-1.3.40.tar.gz |
---|
Contents
Introduction to SWIG
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is used with different types of languages including common scripting languages such as Perl, PHP, Python, Tcl, Ruby and PHP. The list of supported languages also includes non-scripting languages such as C#, Common Lisp (CLISP, Allegro CL, CFFI, UFFI), Java, Modula-3 and OCAML. Also several interpreted and compiled Scheme implementations (Guile, MzScheme, Chicken) are supported. SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG can also export its parse tree in the form of XML and Lisp s-expressions.
Project Homepage: http://www.swig.org/
Dependencies
Optional
Test Suite Note
If you're going to run the test suite, use make -k check instead of just make check. You don't stand a prayer of a chance of finishing all of the tests otherwise. Also, note that there are a lot of tests run, so the test suite will take a while and that it's highly likely that many tests will fail even if SWIG built correctly. Take a look at the README for more details.
Non-Multilib
Compile the package:
./configure --prefix=/usr && make
Install the package
make install
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 ./configure --prefix=/usr && make
Install the package
make install && mv -v /usr/bin/swig{,-32}
N32
Compile the package:
CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure --prefix=/usr --libdir=/usr/lib32 && make
Install the package
make install && mv /usr/bin/swig{,-n32}
64Bit
Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr --libdir=/usr/lib64 && make
Install the package
make install && mv -v /usr/bin/swig{,-64} && ln -sfv multiarch_wrapper /usr/bin/swig