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

Re: Allowing multi-arch specs in depends line?

On Sat, Aug 18, 2012 at 03:09:46PM +0200, Steffen Möller wrote:

> I prepared a package for BOINC (http://boinc.berkeley.edu) with all the
> dependencies for owners of CUDA-savvy NVidia cards to help installing the
> libraries.  Since many scientific applications with BOINC only have 32bit
> binaries, there are extra dependencies for the amd64 platform on the
> respective 32bit variants.  This looked like
> 	libcuda1-ia32 [amd64]|nvidia-current [amd64]
> in the past and was just fine. But recently the nvidia drivers became
> multiarched, so libcuda1-ia32 no longer exists.  A respective update built
> nicely, but lintian complains:

> E: boinc-nvidia-cuda: bad-provided-package-name libcuda1:i386

> The package name is fine, it is even installed:

> $ dpkg -l libcuda1* | egrep '^(ii|\|\|)' | awk '{print $2,$3,$4}'
> Name Version Architecture
> libcuda1:amd64 304.37-1 amd64
> libcuda1:i386 304.37-1 i386

> Is there another way to express the dependency? Or is this a lintian bug?
> I found my specification rather intuitive.

You may not use :$arch specifiers in dependencies for wheezy.  The squeeze
package manager cannot parse such dependencies, so allowing them would make
it impossible to upgrade to wheezy from squeeze.

To work around this, you may need the help of the libcuda maintainers to
provide suitable architecture-dependent packages, marked Multi-Arch:
foreign, that you can depend on in place of using the :$arch suffix.

Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature

Reply to: