When I include "viennacl/linalg/svd.hpp", I got compiling error:
"~/viennalcl/include/viennacl/ocl/context.hpp", line 627: error:
incomplete type is not allowed
viennacl::ocl::kernel temp(kernel_handle, this, p_context_, kernel_name);
Any suggestions?
Thanks,
Yang
Last edit: yang 2013-09-13
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
did you compile with the OpenCL backend enabled? SVD is currently only available with the OpenCL backend, so this must be available in order to get the compilation going.
Best regards,
Karli
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
By adding "-DVIENNACL_WITH_OPENCL -fopenmp -DVIENNACL_WITH_OPENMP", I compile viennacl successfully in linux but still get errors in Mac:
viennacl/ocl/kernel.hpp:192:16: error: request for member ‘handle’ in ‘val’, which is of non-class type ‘const long int’
assert(&val.handle().opencl_handle().context() == &handle_.context() && bool("Kernel and memory object not in the same context!"));
Also, the c++11 and pgi compiler seems not being able to compile viennacl.
Thanks,
Yang
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thanks for letting us know. Could you please let me know which cpp-files you had to edit? Any of the ones shipped in ViennaCL? I'd like to fix these problems so the others won't stumble over it again.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks! Apparently this only affects the latest dev-branch, not the release version. I'll fix this as soon as I've got a Windows machine available again...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
When I include "viennacl/linalg/svd.hpp", I got compiling error:
"~/viennalcl/include/viennacl/ocl/context.hpp", line 627: error:
incomplete type is not allowed
viennacl::ocl::kernel temp(kernel_handle, this, p_context_, kernel_name);
Any suggestions?
Thanks,
Yang
Last edit: yang 2013-09-13
Hi,
did you compile with the OpenCL backend enabled? SVD is currently only available with the OpenCL backend, so this must be available in order to get the compilation going.
Best regards,
Karli
Thanks Karli. I enabled the CUDA, OpenCL and OpenMP. I got the same error in both my linux and mac. I'll keep updates.
Thanks,
Yang
Hi Karli,
By adding "-DVIENNACL_WITH_OPENCL -fopenmp -DVIENNACL_WITH_OPENMP", I compile viennacl successfully in linux but still get errors in Mac:
viennacl/ocl/kernel.hpp:192:16: error: request for member ‘handle’ in ‘val’, which is of non-class type ‘const long int’
assert(&val.handle().opencl_handle().context() == &handle_.context() && bool("Kernel and memory object not in the same context!"));
Also, the c++11 and pgi compiler seems not being able to compile viennacl.
Thanks,
Yang
After replacing long with cl_uint in some test cpp files, it makes viennacl compiled.
Thanks,
Yang
thanks for letting us know. Could you please let me know which cpp-files you had to edit? Any of the ones shipped in ViennaCL? I'd like to fix these problems so the others won't stumble over it again.
Please find all my local modifications as the following:
.//matrix_col_int.cpp
.//matrix_row_int.cpp
.//matrix_vector_int.cpp
.//vector_operations.hpp
Thanks! Apparently this only affects the latest dev-branch, not the release version. I'll fix this as soon as I've got a Windows machine available again...