pip is great for installing things, except when there are C extensions. If I run "pip install pillow" out of the box, I get a bunch of information showing up on the console, with an error in there somewhere. The problem is that I don't have the necessary header files and libraries installed, but the error message doesn't really say that. Having ran into the problem enough, I have now learned I need to go to pillow's website and read up on what I need to install.
Is there any way packages could list external dependencies? Maybe something like requires = ['Python.h', 'somethingelse.h']. I realize there's not much that pip can do about it automatically, but maybe pip could try to figure out if you have those files around and warn if it doesn't see them.
Eventually, I could imagine a distro-specific tool coming along that could more-reliably translate those dependencies into system packages. Something like: yum whatprovides '/usr/include/*/Python.h'
But, for starters, I think somehow listing external dependencies would be helpful.
Ideally it would be great if "pip install pillow" Just Worked, though I imagine that would be pretty impossible. We would likely need to start packaging the c dependencies on pypi, and would probably start approximating something like Gentoo Portage, which I assume is a road we don't want to go down.
Is there anything we can do to improve the situation?
(Sorry if this is a double-email for anyone)