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 target languages including common scripting languages such as Javascript, Perl, PHP, Python, Tcl and Ruby. The list of supported languages also includes non-scripting languages such as C#, D, Go language, Java, Lua, OCaml, Octave, R and Scilab as well as the Guile implementation of the Scheme language. 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 is typically used to parse C/C++ interfaces and generate the 'glue code' required for the above target languages to call into the C/C++ code. SWIG can also export its parse tree in the form of XML.

Project Activity

See All Activity >

License

GNU General Public License version 3.0 (GPLv3)

Follow SWIG

SWIG Web Site

Other Useful Business Software
99.99% Uptime for MySQL and PostgreSQL Databases Icon
99.99% Uptime for MySQL and PostgreSQL Databases

Sub-second maintenance. 2x read/write performance. Built-in vector search for AI apps.

Cloud SQL Enterprise Plus delivers near-zero downtime with 35 days of point-in-time recovery. Supports MySQL, PostgreSQL, and SQL Server.
Start Free
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
★
24
1
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

User Reviews

  • 4 out of 5 stars
    SWIG is an excellent tool for bridging C/C++ with other programming languages. It saves development time, simplifies integration, and supports multiple languages efficiently. The flexibility and automation it provides make cross-language development much smoother and more productive.
  • 5 out of 5 stars
    Very impressive tool. Nowadays Python is rising as quick prototype language, it used in AI, etc... SWIG makes it extremely easy, just from a command line with few commands, to make Python bindings to C/C++ functions, when you need to ensure your critical code is performing at C/C++ speed.
    2 users found this review helpful.
  • 5 out of 5 stars
    SWIG is an outstanding tool that provides native interfaces on various languages for the C/C++ libraries. It has no any alternatives if multiple target languages are considered and has relatively good support even for C++14. Thought, SWIG also lacks plenty of features of the C++11+ that requires lots of manual tuning to make work code that uses templates and move semantics heavily, which is fine for the OFS project, especially with such excellent community, support and active development! SWIG is easy to use for simple projects, but might be rather complicated for the C++11+ code, which is an expected payoff for the provided flexibility.
    2 users found this review helpful.
  • 5 out of 5 stars
    good
  • 5 out of 5 stars
    Like smc.sourceforge.net this is yet another very effective idea and project. Thank you all contributors!
Read more reviews >

Additional Project Details

Operating Systems

BSD, Linux, Windows

Intended Audience

Developers

User Interface

Command-line

Programming Language

C, C++

Related Categories

C++ Code Generators, C++ Compilers, C Code Generators, C Compilers

Registered

2000-01-19