ROSA Linux Bugzilla – Bug 2756
Last modified: 2015-05-15 12:45:35 MSD
openCL can work without fglrx- or nvidia-
it is needed sometimes for some programs
current fglrx-opencl and nvidia-opencl doesn't provide a link to /lib/libopencl.so
this causes software to not use it most probably
i'm trying to build an opencl program with installed fglrx-opencl and it is not finding that lib
will try to propose a spec fix maybe, but i'm not quite sure on how this should differ for x64 vs x32
and i didn't find it in abf, so maybe that's why i cannot find it with requires spec?
In ABF, opencl packages are built as part of corresponding drivers - e.g., fglrx-opencl isa part of fglrx project:
As for your initial question - opencl implementation always depends on particular hardware and thus on particular driver. I think that the correct resolution of your problem is just to add some provides to fglrx-opencl and nvidia-*-opencl to rely on. There is no need to add a symlink. Instead, the packages should adjust ldconfig path to look into their private directories; and as far as I can see, this is already implemented in post scripts. So if you install fglrx-opencl, you should be able to launch any program that uses libOpenCL.so.1.
Though feel free to suggest your improvements to our packages, it seems that there are not so many people dealing with OpenCL in ROSA atm.
One question - you try use 32 bit opencl in 64 bit system? But our hardware blobs non-installed in another arch - you may not install 32 bit blobs in 64 bit system. If answer for question is 'yes', why you need use 32 bit libs in 64 bit?
no, i'm trying to use 64bit opencl,
and i got a problem with ld in abf,
i don't know how to adjust ldconfig in spec
here's the build of package itself with error
i've been trying to add fglrx, but don't know how to enable fglrx-opencl after that and how to include the path of fglrx-opencl into ldconfig, i thought i could use some libdir options but it didn't work for me.
and as for the initial question thre was a problem when i was using not fglrx-driver and vega-strike i don't remember already the 3d app maybe same luxrener was telling about no-opencl, while i was using opencl-lib without fgrlx before, that was an open source driver that actually can use opencl too.
(In reply to comment #5)
> no, i'm trying to use 64bit opencl,
> and i got a problem with ld in abf,
> i don't know how to adjust ldconfig in spec
> here's the build of package itself with error
But this particular problem has nothing to do with opencl. You should somehow add '-lpthread' to ld command line. A fix for this depends on particular package, but in general something like this will help before cmake:
Note hat you can also try to use %cmake macro instead of direct call to this program.
can i add with export fglrx-opencl?
since there's no such package, i was trying to add fglrx first with no success
and the problem for me was on how to add fglrx, then fglrx-opencl and then tell to use it in build
As far as I understand, the real problem is that we don't have libOpenCL.so in our fglrx-devel package. For example, in proprietary nvidia*-devel packages, we do have such a symlink (and that packages require nvidia*-cuda-opencl, as a result).
Maybe it makes sense to implement something similar if fglrx-devel package?