В последнее время я писал некоторый код OpenCL для Linux (Ubuntu 10.4, ATI Catalyst 10.4 и ATI SDK v2.1), и он прекрасно работает на Linux., я получил ошибки сборки программы с жалобами на
"в этом объявлении нет класса хранения или спецификатора типа"
, а затем "глобальная переменная должна быть объявлена в константе addrSapce"
даженаличие void-ядра не работает, черт возьми, я прокомментировал код, и он все равно выдал те же ошибки, лол!
достаточно странно, что сэмплы работают нормально.когда я скопировал свой код в примеры проектов, он выдал те же ошибки.
Я использую 32-битные драйверы Windows 7, ATI Stream SDK v2.1 и v10.6 (потому что я не смог найти10.4 для Windows где угодно, что печально, так как 10.6 не имеет гарантии для поддержки OpenCL, способ пойти и amd lol!)
Я вырезал все ядра и оставил только это, у меня все еще есть те же ошибкивот это
__kernel void set_float( __global float* buff ,
float v) {
buff[get_global_id(0)]=v;
}