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

Golang swig bindings #2653

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from
Draft

Golang swig bindings #2653

wants to merge 20 commits into from

Conversation

nielsproest
Copy link

@nielsproest nielsproest commented Sep 30, 2023

This is a PR which adds the flag --enable-go to configure which builds SWIG golang bindings.
The api has some oddities given that many function just take interface{} types, but given that they correspond to the c++ types its not a problem.
There still are some linker weirdness like having to manually set LD_LIBRARY_PATH

EDIT:
There isn't much more to do except find out how to build working static libraries and how to package it.
The issue with building static is that it cant find sqlite3 for some reason (its static so it should be included?)
The issue with packaging is that golang usually relies on a seperate repo, so while i have made the proper symlinks, you would need to create a new github repo containing files: mega.go, the wrappers, packaging.go and the src/include folder for headers.

@nielsproest nielsproest marked this pull request as draft October 1, 2023 10:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant