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

Manylinux default version #376

Closed
programmerjake opened this issue Nov 2, 2020 · 5 comments
Closed

Manylinux default version #376

programmerjake opened this issue Nov 2, 2020 · 5 comments

Comments

@programmerjake
Copy link
Contributor

programmerjake commented Nov 2, 2020

I encountered an issue with manylinux support for architectures not included in manylinux2010 (powerpc64le-unknown-linux-gnu for me):
Maturin's argument parsing defaults to manylinux2010, which causes pip to not be able to install the built wheel:

ERROR: power_instruction_analyzer-0.2.0-cp38-cp38-manylinux2010_ppc64le.whl is not a supported wheel on this platform.

What do you think of refactoring argument parsing to pick the default manylinux version based on the target arch? something like this:

if manylinux arg passed then
    use arg
else if i686 or x86_64 then // list from PEP 571
    manylinux2010
else if armv7l or aarch64 or ppc64 or ppc64le or s390x then // list from PEP 599
    manylinux2014
else
    off
end
@programmerjake
Copy link
Contributor Author

Related to #367

@programmerjake
Copy link
Contributor Author

An alternative option is to just default to manylinux2014 for supported platforms (otherwise it defaults to off) and people have to explicitly use --manylinux=2010 when they really need support for such an old OS.

@konstin
Copy link
Member

konstin commented Nov 10, 2020

Sounds like a good idea! Implementation-wise, the manylinux could have an auto value that takes the lowest value currently supported. (It would be even better if we could take the lowest version the built binary supports, but unfortunately I haven't figured out how to port that auditwheel part that checks what glibc version is linked to rust)

@messense
Copy link
Member

messense commented Feb 17, 2021

Bitten by this in https://github.com/messense/maturin/runs/1915790218?check_suite_focus=true , it happily builds maturin-0.9.1-py3-none-manylinux2010_aarch64.whl but aarch64 wheel only works on manylinux2014 and later. We should have a better default version.

@messense
Copy link
Member

Fixed by #424

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

No branches or pull requests

3 participants