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:
$ 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.
Many thanks for your insights
Steffen
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 502F941A.5040206@gmx.de">http://lists.debian.org/502F941A.5040206@gmx.de
08-19-2012, 01:05 AM
Steve Langasek
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:
> 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
08-19-2012, 07:41 PM
Chow Loong Jin
Allowing multi-arch specs in depends line?
On 19/08/2012 09:05, Steve Langasek wrote:
> 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.
>
That might make sense if this sort of situation was common. If it were specific
to boinc-nvidia-cuda, I would think that boinc-nvidia-cuda should be split in a
manner similar to this: