[lxml-dev] Binary egg for Mac OS X
Martin Aspeli
optilude+lists at gmail.com
Sun Jun 7 18:42:26 CEST 2009
Stefan Behnel wrote:
> Hi,
>
> Alexander Limi wrote:
>> I'm working on documenting Deliverance / xdv for use with Plone. It has
>> lxml as a dependency, and I have run into a serious issue:
>>
>> On Mac OS X, we can't assume that people have Xcode (ie. gcc and friends)
>> installed, thus we can't really compile lxml on those computers, not even
>> using the staticlxml[1] recipe.
>>
>> I see that there are binary eggs for Windows, is there a special reason
>> why there are no binary eggs for OS X, or is it just a matter of not
>> having the infrastructure to make it available?
>
> The main problem is that many MacOS-X users have some kind of package
> distribution like macports installed, which usually has some distribution
> specific setup/dependencies/paths/whatever. OTOH, those users won't be the
> target for a binary distribution of lxml anyway.
Well, I use MacPorts. And every time I have a package that depends on
lxml, I need to jump through hoops to avoid random segfauls (and OS X
makes those hard to debug!). Luckily, those hoops aren't so big anymore:
I tend to use zc.buildout and I can add this to my buildout:
[lxml]
recipe = z3c.recipe.staticlxml
egg = lxml
force = false
However, people have a *lot* of problems with this. Every Plone sprint
it seems someone is spending half a day or more getting lxml to compile.
Which is a big shame, because lxml is so nice so people like me want to
use it. :)
Therefore, the Plone community, at least, is pretty interested in
solving this problem.
>> Happy to help find a solution if it's just a matter of locating a
>> reliable way to get it compiled every time there is a new release.
>
> Yes, I'd be happy if we could get a static binary egg for each release. I
> don't have a Mac myself (and I'm definitely not a Mac user), so
> contributions are welcome.
>
> http://codespeak.net/lxml/build.html#building-lxml-on-macos-x
So, if we followed those steps to build a statically compiled egg for
each Python version we support (2.4 and 2.6 for Plone...), and uploaded
that to PyPI, we'd be able to just depend on this version of lxml and
no-one on OSX should ever get these annoying problems? That'd be really
nice. ;)
If this is the case, we'll find someone to do this. Are you able to give
someone access to the PyPI page and any relevant support to make this
happen?
Finally - what about Linux? Is it rarely/never a problem, or should we
be trying to make binary eggs there too? Is it possible to make binary
eggs that work across the most common distributions?
Martin
--
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book
More information about the lxml-dev
mailing list