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

binary package doesn't work on ubuntu 16.04 #110

Closed
tetron opened this issue Jan 8, 2021 · 9 comments · Fixed by #111
Closed

binary package doesn't work on ubuntu 16.04 #110

tetron opened this issue Jan 8, 2021 · 9 comments · Fixed by #111

Comments

@tetron
Copy link
Collaborator

tetron commented Jan 8, 2021

The binary package is mostly self-contained but it still relies on glibc:

Error loading Python lib '/home/sarah/.local/share/sevenbridges/benten/benten-2021.1.5/libpython3.8.so.1.0': dlopen: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /home/sarah/.local/share/sevenbridges/benten/benten-2021.1.5/libpython3.8.so.1.0)

I think the problem is we build with ubuntu-latest which is 18.04. According to https://github.com/actions/virtual-environments ubuntu-16.04 is also available so we should see how hard it would be to build on that instead.

I'm also wondering now if this package is going to work on centos7.

@tetron
Copy link
Collaborator Author

tetron commented Jan 8, 2021

ubuntu 16.04 seems to have glibc 2.23

centos7 seems to have glibc 2.17

So for maximum compatibility it would be good if we could build the linux package on centos7 somehow.

@tetron
Copy link
Collaborator Author

tetron commented Jan 8, 2021

github actions doesn't offer centos7 but says to use Docker if you want other environments.

Using the centos:7.9.2009 docker image you can yum install python3 and get python 3.6.8.

As long as all our dependencies are happy with python 3.6 that should be fine.

@ghost
Copy link

ghost commented Jan 8, 2021

I was thinking of building w. Py3.9 for the next release because of #109 (which can probably be fixed in Python for older versions).

So the hypothesis is that with centos:7.9.2009 the binary distribution would be compatible with most linux distros?

I do tend to think that linux users will be more likely to be able to pip install or pipx install things also ...

@mr-c
Copy link
Contributor

mr-c commented Jan 8, 2021

Time to make some manylinux binary wheels!

https://github.com/pypa/manylinux

@tetron
Copy link
Collaborator Author

tetron commented Jan 8, 2021

That's the official-ish Python way? Let's try it.

@tetron
Copy link
Collaborator Author

tetron commented Jan 8, 2021

@kaushik-work for this use case I'm targeting here which is someone using vscode to edit CWL on a remote (linux) host, having benten install seamlessly is still a key part of the experience.

@tetron
Copy link
Collaborator Author

tetron commented Jan 8, 2021

@mr-c we arn't building binary wheels, we're building standalone executables with pyinstaller.

Unfortunately, manylinux considers this to be out of scope: pypa/manylinux#255

The recommendation is to fork manylinux and reenable building with shared libraries, so I'm trying that.

@tetron
Copy link
Collaborator Author

tetron commented Jan 11, 2021

See #111

@tetron
Copy link
Collaborator Author

tetron commented Jan 11, 2021

(Confirmed that the 'manylinux' build works on Ubuntu 16.04).

@ghost ghost closed this as completed in #111 Jan 25, 2021
This issue was closed.
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 a pull request may close this issue.

2 participants