-
Notifications
You must be signed in to change notification settings - Fork 72
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
pip install cyvlfeat doesn't work sometimes #14
Comments
I just realized that this works fine in |
Yes, unfortunately this is a bit of a complicated issue. It's one of the many reasons that pip is really not a good venue for shipping compiled extensions, particularly when they require third party dependencies (such as vlfeat). For example, numpy is shipped in wheels and is also distributed by conda. It is probably quite important to you that your numpy is optimised since its the cornerstone of the scientific Python stack. Unfortunately, if you use the various tricks that allow you install numpy as part of Cython is something I could handle not requiring, though it makes the Finally, satisfying the compiled vlfeat dependency is also quite complicated and would require the ability to pass arguments pertaining to the path of the library and include files. This I could also sort out. It still wouldn't just work, however, as you'd need to have downloaded and built vlfeat yourself beforehand. |
List of changes required to allow easily pip installing cyvlfeat:
|
I made a start on grouping the logic for pandas-style setup.py into a single-file module that can be placed next to The idea being - we write this properly once, and then can reuse that logic across all packages (like versioneer). Perhaps cyvlfeat is a nice testing ground for it? That branch is a little noisy as it includes a bunch of changes internal to menpo - the key thing to look at is just https://github.com/jabooth/menpo/blob/optcython/setup.py and https://github.com/jabooth/menpo/blob/optcython/extmanager.py |
When setting up travis, i realized
pip install cyvlfeat
doesn't just work.It needs cython and numpy installed beforehand. While this is reasonable, it would be nice to be able to just run
pip install cyvlfeat
and not worry about such things ( That's what package managers are for :) )setuptools has a
setup_requires
which I think is meant for this ? (I haven't used it before)I found h5py's setup adds cython in setup_requires and also this SO question is something which tries to do the same with numpy.
The text was updated successfully, but these errors were encountered: