DrawingBotV3 icon indicating copy to clipboard operation
DrawingBotV3 copied to clipboard

Bug: Incompatibility issue with Fedora Linux, missing ocl-icd-opencl-dev package

Open SonarSonic opened this issue 1 year ago • 4 comments

SonarSonic avatar Sep 04 '24 21:09 SonarSonic

FWIW I have installed DrawingBotV3-Premium-1.6.21-stable-linux-x86-64.rpm on Fedora 41.

It complained about needing ocl-icd-opencl-dev which is not available.

There is a package ocl-icd-devel which I installed, and then installed the DB rpm with --nodeps and it seems to start up ok.

I suspect this is a difference in package naming between Debian and Red Hat packaging styles. RPMs are typically -devel and on the DEB side, there's more often a -dev package.

andypiper avatar Mar 17 '25 14:03 andypiper

I don't see where the ocl-icd-opencl-dev dependency exists in the configuration files, or I'd have a look at how to fix this for the RPM build. I assume (from a bit of digging into the repo) that this is mostly all handled by jpackage, but the dependencies must be listed somewhere that I'm not seeing.

The same applies to some of the elements around the .desktop file integration (#132) which I was looking at - I'm guessing this is also somehow configured via jpackage setup.

andypiper avatar Mar 19 '25 21:03 andypiper

@andypiper Thanks for looking into it, as OpenCL is only needed in the Premium version, the Linux dependencies are not in the build.gradle on this repository. I'll look into it, and try building the rpm with ocl-icd-devel instead.

SonarSonic avatar Mar 20 '25 12:03 SonarSonic

Makes sense, thanks!

andypiper avatar Mar 20 '25 20:03 andypiper

For now I've removed the hard dependency on ocl-icd-opencl-dev which was added to resolve #128 and more gracefully handled if OpenCL is missing. For now it does mean Linux users will need to install an OpenCL package to get the benefits of hardware acceleration but also means all distros can be supported.

In the future I will add a prompt to suggest installing a package on Linux to support OpenCL if it's detected that no library is present.

SonarSonic avatar Jul 06 '25 11:07 SonarSonic