Библиотека динамического связывания OpenCL C / C ++ (win32 и более) - PullRequest
3 голосов
/ 17 февраля 2011

Я пробую OpenCL, и для того, чтобы запустить его в производство, я хотел бы иметь возможность динамически привязываться к OpenCL.DLL (в Windows), чтобы «изящно» обрабатывать случай, когдаOpenCL не установлен на хост-компьютере.

Существует ли какая-либо доступная библиотека (или фрагмент кода), которая заботится об этом динамическом связывании в C или C ++, так же, как GLEW для OpenGL?Я хотел бы избежать хлопот, чтобы сделать это сам.

Спасибо,

Ответы [ 3 ]

3 голосов
/ 17 февраля 2011

Вот, пожалуйста,

http://clcc.sourceforge.net/clew_8h.html

0 голосов
/ 25 августа 2011
0 голосов
/ 17 февраля 2011

Поскольку вы имеете дело с Win32, самое простое решение - это задержка загрузки.Если вы задерживаете загрузку OpenCL, и добавленная компилятором заглушка не может его найти, она вызовет __pfnDliFailureHook2(dliFailLoadLib).Вы можете обработать ошибку там;если вы не предоставите обработчик, вы получите поведение по умолчанию (программа прерывается).В любом случае программа не будет иметь статической зависимости от OpenCL.

...