В нашем проекте мы решили перенести OpenCL для улучшения обработки изображений. После миграции проект не работал. Итак, мы попробовали минимальный код из OpenCL и определили, что если OpenCV используется, проект не будет работать.
Например
int main(){
cv::Mat mat;
std::vector<cl::Platform> all_platforms;
cl::Platform::get(&all_platforms);
std::cout <<"fertig.";
return 0;
}
падает в cl :: Platform :: get ().
terminate called after throwing an instance of 'cl::Error'
what(): clGetPlatformIDs
Я скомпилировал это с
gcc test.cpp -lOpenCl -lopencv_core -lopencv_highgui
Если я выпущу эту маленькую командную строку «cv :: Mat mat», то все в порядке. Так в чем проблема?
Я использую драйвер Intel OpenCl: 1.2-4.4.0.117.
Задача ещё не решена.