document STATICBUILD

Bug #596951 reported by Sridhar Ratnakumar
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lxml
Fix Released
Undecided
Unassigned

Bug Description

A while ago I had contributed a patch to automatically download pre-built dependencies on Windows and statically link against them. See http://bazaar.launchpad.net/~vcs-imports/lxml/trunk/revision/2994

This requires the use of STATICBUILD environment variable (which is what the PyPM build uses). This environment variable configures lxml for both static linking and auto-download of pre-built dependencies (both on OSX and Windows).

The installation document speaks of `STATIC_DEPS=True` ... which works only on OSX. Perhaps that should be changed to this?

  $ STATICBUILD=true easy_install lxml

This works on both OSX and Windows 32-bit (TODO: we need to do the same for 64-bit).

Additionally STATIC_DEPS can be deprecated, would you agree?

Revision history for this message
Sridhar Ratnakumar (srid) wrote :

BTW, the original idea behind 'STATICBUILD' is to informally/gradually standardize on an environment variable that will allow Python users to install a module without having to install the dependencies themselves (especially on Windows). So for instance, "STATICBUILD=true easy_install numpy" *can* be made to work by downloading pre-built ATLAS libraries.

Revision history for this message
Pascal (p-oberndoerfer) wrote :

STATIC_DEPS allows me to download sources of dependencies and go from there.

Am I right in assuming STATICBUILD would need acces to pre-built (binary) libs?

Thanks for clarifying this to me!

BR, Pascal

Revision history for this message
Sridhar Ratnakumar (srid) wrote :

STATICBUILD in linux will download pre-built libraries on Windows only. On Linux and Mac, it downloads official sources and builds them.

Note that: ideally we should be able to *build* on Windows too. We could convert the scripts here http://people.canonical.com/~sidnei/lxml/ to Python and add it to setup.py. This will make it easier and straightforward to create binary eggs and exes when a new lxml release comes up.

Revision history for this message
Pascal (p-oberndoerfer) wrote :

On Mac (at least for 10.4 and 10.5) the libraries libiconv and zlib (see https://bugs.launchpad.net/lxml/+bug/610511) are needed as well. Could you please confirm STATICBUILD is taking care of this?

My current setup to provide eggs for Mac is based around STATIC_DEPS. The proposed deprecation would make it more difficult to continue this.

Best regards,

Pascal

scoder (scoder)
Changed in lxml:
milestone: none → 2.3.1
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.