Bug#763655: boinc-amd-opencl: wrong dependencies regarding OpenCL

Vincent Danjean vdanjean at debian.org
Wed Oct 1 20:05:40 UTC 2014

On 01/10/2014 20:12, Andrei POPESCU wrote:
> Control: reassign -1 boinc-amd-opencl
> On Mi, 01 oct 14, 18:11:27, Vincent Danjean wrote:
>> Source: boinc-amd-opencl Version: 7.2.47+dfsg-3~bpo70+1 Severity: important
> Bugs against packages from backports should normally *not* be reported in the BTS, but at a quick glance this seems to apply also to unstable (and it's the same Maintainer anyway).

Yes, sorry. I checked this bug with "apt-cache show boinc-amd-opencl" and,
as all versions listed on my computer had the bug, I reported it against the older
one. I did not take into account that this was a backport version.


> Kind regards, Andrei
>> Hi,
>> I just notice that you package is depending on "amd-libopencl1 | fglrx | fglrx-updates" I do not understand how this can be correct.
>> Indeed, in Debian, fglrx and fglrx-updates do not exist at all currently (even as virtual packages). apt-get cannot install them. So these alternatives are void (perhaps there are here for other distributions such as ubuntu, I do not know). And amd-libopencl1 is an *ICD Loader*, not an ICD. It means that this is not an OpenCL implementation but only a loader of such implementation. And it can load any ICD installed on the machine (not just the AMD one). And other ICD loaders can be used instead of this one (even with the AMD ICD, ie the AMD OpenCL implementation).
>> So, I think that you should remove this dependency, instead use: - "Depends: libopencl1-X.Y-1" to depends on a ICD Loader that support OpenCL up to version X.Y. Currently, these virtual packages exists for 1.1, 1.2 and 2.0. Note that, in the usual case, this dependency is added automaticcaly whith dh_shlibs due to symbol files when you have a program that links with libOpenCL.so.1 - "Depends: amd-opencl-icd" if you wish to force the presence of the AMD OpenCL implementation. Note that other OpenCL implementations can be installed and OpenCL programs have to explicitly choose which ICD they will use. The ICD loader (even the AMD one packaged in amd-libopencl1) will choose a random one as default. The
>> ocl-icd-libopencl1 ICD Loader allows to choose the default ICD with an environment variable. If you require only a (standard) OpenCL environment, you should depends (or recommends) only the opencl-icd virtual package, so that other OpenCL implementations can satisfy your dependency.
>> Regards, Vincent
>> -- System Information: Debian Release: jessie/sid APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 armel mipsel
>> Kernel: Linux 3.14-2-amd64 (SMP w/8 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash

Vincent Danjean       GPG key ID 0xD17897FA         vdanjean at debian.org
GPG key fingerprint: 621E 3509 654D D77C 43F5  CA4A F6AE F2AF D178 97FA
Unofficial pkgs: http://moais.imag.fr/membres/vincent.danjean/deb.html
APT repo:  deb http://people.debian.org/~vdanjean/debian unstable main

More information about the pkg-boinc-devel mailing list