-
Notifications
You must be signed in to change notification settings - Fork 264
Manylinux/GCC versions #303
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
Comments
Hi @0phoff. I've not run into these kinds of issues or run into them, I'm afraid. Do you have any more information about this ABI incompatibility, and do you know what your user is using, then? I can try to reply to your questions, but to be honest, maybe this is something you should ask in the manylinux repository (https://github.com/pypa/manylinux/). Anyway, to the best of my knowledge: my answers (but take them with a pinch of salt!):
The produced wheels are compatible with less versions of Linux (cfr. the glibc ABI versions, etc, manylinux1 vs. manylinux2010). That being said, being based on CentOS 5 and CentOS 6, those are released in 2007 and 2011, respectively. So
They should, as far as I know. Unless you'd somehow be accessing internals that require full binary compatibility, I think different libraries should be independent.
I think there were even security concerns about using the old, non-supported manylinux1 image (see pypa/manylinux#179 (comment)), so I think moving on to manylinux2010 is even encouraged. So I think there's no problem if you want to switch to manylinux2010, as everyone will be doing it. Still, that doesn't mean manylinux1 images should have the issue you described, so it might still be good to take this up with the manylinux people? |
Also it is possible that when you switch to manylinux2010 it still will produce manylinux1 wheel next to manylinux2010. see https://cibuildwheel.readthedocs.io/en/stable/options/#manylinux-image |
But that's (probably) not really relevant, right now, I think. |
Thanks for your quick replies, I will update to the new cibuildwheel version and use manylinux2010. I will also use this opportunity to build arm binaries with manylinux2014! |
I used cibuildwheel 1.1.0 in order to generate wheels for my library (which uses cython code) and have been using this for a few months already. 🎉
Now I received an issue from a user, where his program segfaults when importing my library (brambox) and a another one (pytorch). I'm still not sure what the cause is, but by googling around, I think it might be because I used
manylinux1
and thusGCC 4.8
, which is ABI incompatible with newer GCC versions.The weird thing is that I have been using the official package of pytorch, which is reportedly compiled with GCC 4.9, without any issues... 🤔
The user in question used a pytorch version from his package manager (pacman - arch user), and there it crashes.
This leaves my quite puzzled and I don't really know what to do here. 😧
I checked out this repo and noticed the new version supports
manylinux2010
andmanylinux2014
which use newer GCC versions, so I might be tempted to migrate to using those.However, as I do not fully understand all the implications of this, I would like to have your advice! 😇
manylinux1
?manylinux1
if possible ?The text was updated successfully, but these errors were encountered: