Anime4KCPP: Doesn't build on macOS

macOS has problems with libomp which I solved by using this. But it seems Anime4KCPP also needs OpenCL 2.0, which is not supported by Apple drivers:

[  7%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o
clang-10: warning: -lpthread: 'linker' input unused [-Wunused-command-line-argument]
/Users/evar/Base/_Code/Misc/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:615:20: error: use of undeclared identifier
      'clCreateCommandQueueWithProperties'; did you mean 'clCreateCommandQueueWithPropertiesAPPLE'?
    commandQueue = clCreateCommandQueueWithProperties(context, device, nullptr, &err);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   clCreateCommandQueueWithPropertiesAPPLE
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/OpenCL.framework/Headers/cl_ext.h:271:3: note:
      'clCreateCommandQueueWithPropertiesAPPLE' declared here
  clCreateCommandQueueWithPropertiesAPPLE (cl_context                          /* context */,
  ^
1 error generated.
make[2]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o] Error 1
make[1]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/all] Error 2
make: *** [all] Error 2

I could not find a workaround for this one. There is a pocl driver which might solve this but it seems it has not been maintained lately and is no longer installable on macOS. brewsci/science/pocl of homebrew certainly no longer works. It might be possible for you to stop using the new API (my searches seemed to indicate this clCreateCommandQueueWithProperties is not all that essential). If not, I guess you should update the readme to point out that this does not work on macOS.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 16 (16 by maintainers)

Most upvoted comments

Thank you. Now Anime4KCPP has been built and tested on all popular operating systems.😀