Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add SWIG to images #42

Open
pgaskin opened this issue Feb 16, 2020 · 4 comments
Open

Add SWIG to images #42

pgaskin opened this issue Feb 16, 2020 · 4 comments

Comments

@pgaskin
Copy link

pgaskin commented Feb 16, 2020

SWIG is used by Go to generate bindings for C++ CGO libs.

@andresrc
Copy link

andresrc commented Feb 17, 2020

ping @elastic/observablt-robots

@andresrc
Copy link

Can you provide more information on what you are using the image for? Thanks for the contribution!!

@pgaskin
Copy link
Author

pgaskin commented Feb 17, 2020

I'm using it for libmarisa (a C++ library) bindings as part of my dictutil tool. Currently, I manually install it with apt during the build.

I recently switched most of my other projects over to this image (to replace dockercore/golang-cross, which is outdated and doesn't have the best layout). This is currently my only project which needs it, but SWIG is the recommended (and built-in) way to use C++ in CGO (see the doc near the top of https://golang.org/pkg/cmd/go/internal/help/), so this is likely to be useful for other people as well.

@kuisathaverat
Copy link
Contributor

In a nutshell, SWIG is a compiler that takes C/C++ declarations and creates the wrappers needed to access those declarations from other languages including Perl, Python, Tcl, Ruby, Guile, and Java.

SWIG is a CLI tool to make wrappers to programs made in C/C++ and use them in several languages. @andresrc Do you want us to install this tool on the workers of our CI (beats-ci)? Do you want us to install this tool in the cross-build images? Do you have a job where we can test it??

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants