Closed henry0312 closed 6 years ago
@zouzias thanks for the pointers!
Background on wheels that support multiple Linux distros. https://www.youtube.com/watch?v=oE5iePv8nD8
Project dedicated to building wheels for multiple distros. https://github.com/pypa/manylinux
Starting point for our build process. https://github.com/zouzias/pyboostrtree/blob/use_manylinux1/build-manylinux1.sh
How about pushing linux wheels, which you’ve already released on GitHub, to pypi? I guess his problem is building issue from source code.
@chezou I think this would lead to trouble since the wheels won't work on all linux distros. :-(
Ah, I missed Pypi requires manylinux whl.
@ibayer Here is also an example of how to integrate manylinux1 with Travis:
https://github.com/pypa/python-manylinux-demo
Notice that you need to build the wheels for x86_64 and i686.
Here's a script which can build wheels on Ubuntu using docker. The script is pretty straight forward, so you should be able to follow along for different distros.
Soon I will be making a PR which will modify travis.yml so that wheels will be built automatically, so this is just to help someone build them on their own.
https://gist.github.com/chittti/c95de0bd1bab8340c34b59d1be21bb26
which uses the build script for CentOS docker image:
https://gist.github.com/chittti/bfa4f4fdc2d8ab9e8be01ce2dd087cce
I've tested the script in Ubuntu 14.04 and 16.04 so please let me know any of you have problems.
@chittti Thanks for your contribution. Can you make the gist public and add a license? You could for example add "This project is licensed under the terms of the MIT license." as comment to the script.
@ibayer done. I've licensed it under the same license as this project so it'll be simpler.
I cut a new release yesterday using our new manylinux setup. :-D
This release adds the capabilities to build binaries (wheels) that work across a large range of Linux distributions to our travis-ci. This will greatly benefit everyone who had issues with source installing fastFM.
Special thanks goes to
@zouzias for pointing us to the manylinux project,
to @chittti for writing the manylinux based build script
and @chezou for integrating the build script in our travis config.
Please submit wheel for not only macos, but also linux to PyPI
because installing fastFM on Docker fails, (installing on Ubuntu and Debian works fine)