[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: python-numpy has problems on buildbots



Hi,

On 12/5/07, Ondrej Certik <ondrej@certik.cz> wrote:
> Hi,
>
> we with Kumar made a progress and had python-numpy uploaded (thanks Fabio).
>
> It builds nicely in pbuilder, but fails to build on buildbots. See:
>
> http://buildd.debian.org/pkg.cgi?pkg=python-numpy
>
> Fabio uploaded it on amd64, so that one is fine.
>
> Crucial are the following lines from debian/control:
>
> Build-Depends: cdbs (>= 0.4.43), python-all-dev, python-all-dbg,
> python-central (>= 0.5.6), refblas3-dev [!arm !m68k], lapack3-dev
> [!arm !m68k], debhelper (>= 5.0.38), g77, patchutils, python-docutils,
> fftw3-dev
> Build-Conflicts: lapack-dev [!arm !m68k], blas-dev [!arm !m68k],
> atlas2-base, atlas2-base-dev, atlas3-base, atlas3-base-dev
>
> As you can see, arm and m68k are exceptions and indeed python-numpy
> builds on them just fine (see the link above). (It's still building on
> m68k, but last revision built there fine). It
> doesn't build on other architectures. If we look for example why it
> failed on the most important architecture i386:
>
> [...]
>
> So as you can see, the problem is that buildbots install atlas3-base
> for some reason and because we build-conflict with it, we fail.
>
> Three questions:
>
> 1. Why is there the build-conflict in the first place? This is the
> question to original maintainers (Marco, Alexandre, Jose, Matthias)

I added the build-conflict because without it, dpkg-shlibdeps would
make them depend exclusively on blas and lapack, instead of depending
on the virtual package (because all other packages provide blas and
lapack)

So instead of getting the desired:

  Depends: atlas3-base | lapack3 | liblapack.so.3, atlas3-base |
refblas3 | libblas.so.3, ...

dpkg-shlibdeps would produce:

  Depends: atlas2-base

Or

  Depends: atlas3-base


> 2. Why are there the exceptions to m68k and arm?

Because m68k and arm don't have atlas.

> 3. If the build-conflict is needed, how can we fix the package so that
> it builds on buildbots?

I don't know.

Perhaps the solution is to fix the packages listed Build-Conflicts so
that when dpkg-shlibdeps traverses them, it produces the right
dependency list.

Or find someway to override dpkg-shlibdeps behavior so that it
produces the right dependency list.

I think I used another debian package as reference for this. You might
want to see how other debian packages that link against lapack+blas /
atlas are doing nowadays.

> CCing to Lucas, because he has some experience with these kinds of problems.
>
> Thanks,
> Ondrej
>

Cheers,

José



Reply to: