[prev in list] [next in list] [prev in thread] [next in thread]
List: python-distutils-sig
Subject: Re: [Distutils] building with static dependencies
From: Sridhar Ratnakumar <sridharr () activestate ! com>
Date: 2010-04-30 19:36:52
Message-ID: 6B1D63DF-7B9D-4EAB-BD08-B321EA5B2E19 () activestate ! com
[Download RAW message or body]
On 2010-04-30, at 5:58 AM, Chris Withers wrote:
> Sridhar Ratnakumar wrote:
> > Similar to "STATICDEPS=True python setup.py bdist_egg" in lxml?
>
> If that lets me build and egg that I can then shove onto another box of the same OS \
> and install with easy_install without installing any other dependencies, then yes, \
> sure :-)
Only lxml is aware of the STATICDEPS environment variable (see buildliblxml.py) and \
builds dependencies with static linking accordingly. AFAIK, no other package does \
this .. though I imagine someone can work on one of the following:
1. [PEP] Infrastructure to automatically build dependencies with shared or static \
linking 2. A cross-platform Macports/Portage like system to build 'external' \
dependencies for Python packages (Enthought may have something similar to this, as \
they have .egg for non-Python packages)
> > and build atlas yourself on linux.
>
> Is there really no simpler way than following the huge and convolute process \
> described here:
> http://www.scipy.org/Installing_SciPy/Linux#head-eecf834fad12bf7a625752528547588a93f8263c
>
Yes, no other simpler documented process that I know of. The ActiveState PyPM \
repository does come with scipy/numpy linked with the ATLAS libraries (except Windows \
64-bit which apparently does not work with ATLAS yet; and perhaps requires MKL). You \
will need the non-free Business Edition subscription to access these modules. Like \
virtualenv, you can install these modules on any virtualenv ("pypm -E /tmp/myvenv \
install scipy numpy") and any Linux/Windows/Mac machine. \
http://www.activestate.com/business_solutions/compare/ (Try it with the free 'pil' \
package, if you are interested)
> > In both cases, setup.cfg has to be modified to point to these ATLAS libraries. \
> > ATLAS will be statically linked.
>
> ...which is why I guess you can't rely on the operating system supplied ATLAS \
> libraries if you want them to be statically linked?
> > To statically link libgfortran: on Mac, take a look at the libgfotran.a copying \
> > hack in pavement.py (scipy trunk); on Linux, I haven't yet figured out a way to \
> > reliably link libgfortran statically to numpy.]]
>
> We're on Windows, Linux and maybe Mac...
Recently I figured out that to link with libgfortran (GPL) on Linux, you have to use \
GCC 4.3 or later, rebuild ATLAS with it and use the -static-libgfortran flag to the \
gfortran compiler.
-srid
_______________________________________________
Distutils-SIG maillist - Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic