[SciPy-Dev] Bundling Boost?

David Cournapeau cournape@gmail....
Mon Oct 8 05:41:41 CDT 2012


On Mon, Oct 8, 2012 at 12:58 AM, Fernando Perez <fperez.net@gmail.com> wrote:
> On Sun, Oct 7, 2012 at 8:40 AM, Pauli Virtanen <pav@iki.fi> wrote:
>> I'm not 100 % certain about the compiler support. Perhaps C++ is already
>> mature enough to work across the platforms we care about.
>
> It's worth having a good test of the compiler situation first.  I have
> horrible memories a few years ago (not that long, though) of trying to
> use the Boost Graph Library for a project with python wrappers, and
> the Boost version this used wouldn't even compile with the newest gcc
> of the current ubuntu at the time.  My only solution was to build gcc
> itself from source.
>
> So before we end up foisting upon RedHat users or similar the
> requirement that to build scipy they need to rebuild their compilers
> from source, which I suspect wouldn't be a very popular move, let's
> find out what is the oldest version of gcc this particular part of
> boost will require.
>
> Boost is great, but it's also famous for pushing compilers very, very
> far beyond their comfort zone.  So this step should not be taken
> lightly.  It would also be good to know:
>
> - does it compile with MS compilers? If so, what's the oldest version
> that works?
> - and what about the Intel ones?
>
> Not trying to rain on the parade, but over the last 10 years I've
> tried to use boost a few times, and every occasion has led to compiler
> pain.  So I'd be cautious with putting it in as a scipy dependency.

We don't want to put boost altogether as a dependency, for all the
reasons you're giving.

In this case, I don't mind so much, because:
  - the templates for each special function are used in only one
compilation unit, so they will be compiled only once
  - there is a mode when you can force the exceptions do be disabled
and use ERRNO instead, so not too many issues there either.

David


More information about the SciPy-Dev mailing list