【发布时间】:2021-10-28 14:10:52
【问题描述】:
我想使用 OpenCL 开发一个 Qt C++ 应用程序。
问题是我不知道需要安装/下载什么才能在我的项目中使用 OpenCL。 我对互联网上许多过时的线程感到困惑。我已经从官方 Khronos 页面下载了 SDK 存储库: https://github.com/KhronosGroup/OpenCL-SDK
但是里面没有 .lib 和 .so 文件,只有头文件,所以我无法将库链接到我的项目。
我使用的是 Windows 10,并且我有 AMD 显卡,但我的目标是开发一个可以在任何专用/集成 GPU 上运行的应用程序。
什么是让它工作并开始编码的方法?
【问题讨论】:
-
但里面没有 .lib 和 .so 文件, 您需要使用 CMake 生成项目文件或 makefile 并使用您将用于您的应用程序的相同编译器。 https://github.com/KhronosGroup/OpenCL-SDK#readme 为您提供有关获取依赖项以及如何构建的说明。
-
@drescherjm 我按照 readme.md 中的描述生成了项目,但我仍然不知道如何将它链接到我的 c++ 项目。构建示例让我生成了 2 个文件: ./build/CMakeFiles/3.16.3/CompilerIdC/a.out ./build/CMakeFiles/3.16.3/CompilerIdCXX/a.out 但在链接其中之一后,我仍然无法使用 OpenCL 中的包含他们(都尝试过)作为图书馆。
-
在您创建的构建文件夹中生成 Makefile 后,您是否键入 make 来构建代码?您也可以在构建文件夹中输入
cmake --build .。 -
您尝试的文件只是为了确定有关您的编译器的信息而生成的测试可执行文件。
-
CMake 在 Windows 上不起作用,所以我使用 gcc 在 WSL 上编译,但我的项目仍然没有看到来自 OpenCL 的包含。