我有一个用于在地图中进行寻路的 openCL 内核。这在 MAC 上工作得很好,但在 Windows 机器上,在 clBuildProgram() 方法中,我收到一个错误,指出源文件不是有效的 UTF-8。
cl_program build_program(cl_context ctx, cl_device_id dev, const char* filename)
Run Code Online (Sandbox Code Playgroud)
我在网上搜索了一个解决方案,但它们都与clang有关。
我正在尝试使用 NVIDIA GPU 在 Visual Studio 2013 上运行它。我尝试通过转到 File->Advanced Save Options 以 UTF-8 格式保存 .cpp 和 .cl 文件。我还尝试使用 SublimeText 3 以 UTF-8 格式保存它,但仍然没有运气。
我还有其他简单的 opencl 代码程序可以在这台机器上正常运行。我在另一台装有 NVIDIA GPU 的 Windows PC 上尝试了同样的方法,但得到了同样的错误。
主程序
#define PROGRAM_FILE "main.cl"
#define KERNEL_FUNC "handleCall"
#define _CRT_SECURE_NO_WARNINGS
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <time.h>
#include <fstream>
#include <new>
#include <iostream>
#ifdef __APPLE__
#include <OpenCL/cl.h> …Run Code Online (Sandbox Code Playgroud)