Hi Prashant,

This is likely the same as this github issue:
https://github.com/pyopencl/pyopencl/issues/81

Andreas

Prashant Saxena <[email protected]> writes:
> My environment:ubuntu 14.04 x86_64 *FRESH* installation
> pyopencl-2015.2.1
> AMD-APP-SDK-v3.0.130.135-GA-linux64
> python 2.7.6
> gcc 4.8.4
> kernel 3.13.0-24-generic
> EGLIBC 2.19-0ubuntu6
> siteconfig.pyCL_TRACE = False
> CL_ENABLE_GL = False
> CL_INC_DIR = ['/opt/AMDAPPSDK-3.0/include/']
> CL_LIB_DIR = ['/opt/AMDAPPSDK-3.0/lib/x86_64/']
> CL_LIBNAME = ['OpenCL']
> CXXFLAGS = ['-std=c++0x']
> LDFLAGS = []
> Commands:python configure.pymake
> Errors:Text file attached.
> CheersPrashant
>
>
>                                                                      ^
> src/c_wrapper/function.h:106:69: note: candidate is:
> src/c_wrapper/function.h:43:1: note: template<class Function, class T> 
> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&)
>  call_tuple(Function &&func, T &&args)
>  ^
> src/c_wrapper/function.h:43:1: note:   template argument 
> deduction/substitution failed:
> src/c_wrapper/function.h: In substitution of 'template<class Function, class 
> T> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&) [with Function = int (*&)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*); T = std::tuple<const program* const&, int&, int&, 
> std::nullptr_t&, long unsigned int*>]':
> src/c_wrapper/function.h:106:69:   required by substitution of 
> 'template<template<class ...> class typedef Getter Getter, class Func> 
> decltype (call_tuple(func, this->.get<template<template<class ...> class 
> Convert, class ... Types> template<class ...> class Getter>())) 
> ArgPack<Convert, Types>::call(Func) [with Getter = Getter; Func = Func; 
> Convert = CLArg; Types = {const program* const, int, int, std::nullptr_t, 
> ArgBuffer<long unsigned int, (ArgType)0>}] [with typedef Getter Getter = 
> __CLArgGetter; Func = int (*)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*)]'
> src/c_wrapper/error.h:183:5:   required by substitution of 'template<class 
> Func> decltype (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, int, std::nullptr_t, ArgBuffer<long unsigned int, 
> (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, long unsigned 
> int, void*, long unsigned int*)]'
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, int, std::nullptr_t, ArgBuffer<long unsigned int, 
> (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:81:64:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/function.h:46:32: error: no matching function for call to 
> '_call_func(int (*&)(_cl_program*, unsigned int, long unsigned int, void*, 
> long unsigned int*), gens<0, 0, 1, 2, 3, 4>::type, std::tuple<const program* 
> const&, int&, int&, std::nullptr_t&, long unsigned int*>&)'
>                             args))
>                                 ^
> src/c_wrapper/function.h:46:32: note: candidate is:
> src/c_wrapper/function.h:35:1: note: template<class Function, int ...S, class 
> ... Arg2> decltype (func((forward<Arg2>)((get<S>)(*_call_func::args))...)) 
> _call_func(Function, seq<S ...>, std::tuple<_Tail ...>&)
>  _call_func(Function func, seq<S...>, std::tuple<Arg2...> &args)
>  ^
> src/c_wrapper/function.h:35:1: note:   template argument 
> deduction/substitution failed:
> src/c_wrapper/function.h: In substitution of 'template<class Function, int 
> ...S, class ... Arg2> decltype 
> (func((forward<Arg2>)((get<S>)(*_call_func::args))...)) _call_func(Function, 
> seq<S ...>, std::tuple<_Tail ...>&) [with Function = int (*)(_cl_program*, 
> unsigned int, long unsigned int, void*, long unsigned int*); int ...S = {0, 
> 1, 2, 3, 4}; Arg2 = {const program* const&, int&, int&, std::nullptr_t&, long 
> unsigned int*}]':
> src/c_wrapper/function.h:46:32:   required by substitution of 'template<class 
> Function, class T> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&) [with Function = int (*&)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*); T = std::tuple<const program* const&, int&, int&, 
> std::nullptr_t&, long unsigned int*>]'
> src/c_wrapper/function.h:106:69:   required by substitution of 
> 'template<template<class ...> class typedef Getter Getter, class Func> 
> decltype (call_tuple(func, this->.get<template<template<class ...> class 
> Convert, class ... Types> template<class ...> class Getter>())) 
> ArgPack<Convert, Types>::call(Func) [with Getter = Getter; Func = Func; 
> Convert = CLArg; Types = {const program* const, int, int, std::nullptr_t, 
> ArgBuffer<long unsigned int, (ArgType)0>}] [with typedef Getter Getter = 
> __CLArgGetter; Func = int (*)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*)]'
> src/c_wrapper/error.h:183:5:   required by substitution of 'template<class 
> Func> decltype (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, int, std::nullptr_t, ArgBuffer<long unsigned int, 
> (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, long unsigned 
> int, void*, long unsigned int*)]'
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, int, std::nullptr_t, ArgBuffer<long unsigned int, 
> (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:81:64:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/function.h:36:62: error: cannot convert 'const program* const' 
> to '_cl_program*' in argument passing
>      -> decltype(func(std::forward<Arg2>(std::get<S>(args))...))
>                                                               ^
> In file included from src/c_wrapper/clhelper.h:1:0,
>                  from src/c_wrapper/wrap_cl.cpp:2:
> src/c_wrapper/error.h: In instantiation of 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long 
> unsigned int, void*, long unsigned int*}; cl_int = int]':
> src/c_wrapper/clhelper.h:83:67:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/error.h:218:51: error: no matching function for call to 
> 'CLArgPack<const program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, 
> ArgBuffer<long unsigned int, (ArgType)0> >::clcall(cl_int (*&)(_cl_program*, 
> unsigned int, long unsigned int, void*, long unsigned int*), const char*&)'
>      cl_int status_code = argpack.clcall(func, name);
>                                                    ^
> src/c_wrapper/error.h:218:51: note: candidate is:
> src/c_wrapper/error.h:183:5: note: template<class Func> decltype 
> (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}]
>      clcall(Func func, const char *name)
>      ^
> src/c_wrapper/error.h:183:5: note:   template argument deduction/substitution 
> failed:
> src/c_wrapper/error.h: In substitution of 'template<class Func> decltype 
> (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, 
> long unsigned int, void*, long unsigned int*)]':
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long 
> unsigned int, void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:83:67:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/error.h:183:5: error: no matching function for call to 
> 'CLArgPack<const program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, 
> ArgBuffer<long unsigned int, (ArgType)0> >::call(int (*&)(_cl_program*, 
> unsigned int, long unsigned int, void*, long unsigned int*))'
> src/c_wrapper/error.h:183:5: note: candidate is:
> In file included from src/c_wrapper/pyhelper.h:5:0,
>                  from src/c_wrapper/wrap_cl.cpp:1:
> src/c_wrapper/function.h:106:5: note: template<template<class ...> class 
> typedef Getter Getter, class Func> decltype (call_tuple(func, 
> this->.get<template<template<class ...> class Convert, class ... Types> 
> template<class ...> class Getter>())) ArgPack<Convert, Types>::call(Func) 
> [with Getter = Getter; Func = Func; Convert = CLArg; Types = {const program* 
> const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long unsigned 
> int, (ArgType)0>}]
>      call(Func func) -> decltype(call_tuple(func, this->get<Getter>()))
>      ^
> src/c_wrapper/function.h:106:5: note:   template argument 
> deduction/substitution failed:
> src/c_wrapper/function.h: In substitution of 'template<template<class ...> 
> class typedef Getter Getter, class Func> decltype (call_tuple(func, 
> this->.get<template<template<class ...> class Convert, class ... Types> 
> template<class ...> class Getter>())) ArgPack<Convert, Types>::call(Func) 
> [with Getter = Getter; Func = Func; Convert = CLArg; Types = {const program* 
> const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long unsigned 
> int, (ArgType)0>}] [with typedef Getter Getter = __CLArgGetter; Func = int 
> (*)(_cl_program*, unsigned int, long unsigned int, void*, long unsigned 
> int*)]':
> src/c_wrapper/error.h:183:5:   required by substitution of 'template<class 
> Func> decltype (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, 
> long unsigned int, void*, long unsigned int*)]'
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long 
> unsigned int, void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:83:67:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/function.h:106:69: error: no matching function for call to 
> 'call_tuple(int (*&)(_cl_program*, unsigned int, long unsigned int, void*, 
> long unsigned int*), std::__tuple_cat_result<std::tuple<const program* 
> const&>, std::tuple<int&>, std::tuple<long unsigned int, _cl_device_id**>, 
> std::tuple<long unsigned int*> >::__type)'
>      call(Func func) -> decltype(call_tuple(func, this->get<Getter>()))
>                                                                      ^
> src/c_wrapper/function.h:106:69: note: candidate is:
> src/c_wrapper/function.h:43:1: note: template<class Function, class T> 
> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&)
>  call_tuple(Function &&func, T &&args)
>  ^
> src/c_wrapper/function.h:43:1: note:   template argument 
> deduction/substitution failed:
> src/c_wrapper/function.h: In substitution of 'template<class Function, class 
> T> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&) [with Function = int (*&)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*); T = std::tuple<const program* const&, int&, long 
> unsigned int, _cl_device_id**, long unsigned int*>]':
> src/c_wrapper/function.h:106:69:   required by substitution of 
> 'template<template<class ...> class typedef Getter Getter, class Func> 
> decltype (call_tuple(func, this->.get<template<template<class ...> class 
> Convert, class ... Types> template<class ...> class Getter>())) 
> ArgPack<Convert, Types>::call(Func) [with Getter = Getter; Func = Func; 
> Convert = CLArg; Types = {const program* const, int, 
> ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long unsigned int, 
> (ArgType)0>}] [with typedef Getter Getter = __CLArgGetter; Func = int 
> (*)(_cl_program*, unsigned int, long unsigned int, void*, long unsigned 
> int*)]'
> src/c_wrapper/error.h:183:5:   required by substitution of 'template<class 
> Func> decltype (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, 
> long unsigned int, void*, long unsigned int*)]'
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long 
> unsigned int, void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:83:67:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/function.h:46:32: error: no matching function for call to 
> '_call_func(int (*&)(_cl_program*, unsigned int, long unsigned int, void*, 
> long unsigned int*), gens<0, 0, 1, 2, 3, 4>::type, std::tuple<const program* 
> const&, int&, long unsigned int, _cl_device_id**, long unsigned int*>&)'
>                             args))
>                                 ^
> src/c_wrapper/function.h:46:32: note: candidate is:
> src/c_wrapper/function.h:35:1: note: template<class Function, int ...S, class 
> ... Arg2> decltype (func((forward<Arg2>)((get<S>)(*_call_func::args))...)) 
> _call_func(Function, seq<S ...>, std::tuple<_Tail ...>&)
>  _call_func(Function func, seq<S...>, std::tuple<Arg2...> &args)
>  ^
> src/c_wrapper/function.h:35:1: note:   template argument 
> deduction/substitution failed:
> src/c_wrapper/function.h: In substitution of 'template<class Function, int 
> ...S, class ... Arg2> decltype 
> (func((forward<Arg2>)((get<S>)(*_call_func::args))...)) _call_func(Function, 
> seq<S ...>, std::tuple<_Tail ...>&) [with Function = int (*)(_cl_program*, 
> unsigned int, long unsigned int, void*, long unsigned int*); int ...S = {0, 
> 1, 2, 3, 4}; Arg2 = {const program* const&, int&, long unsigned int, 
> _cl_device_id**, long unsigned int*}]':
> src/c_wrapper/function.h:46:32:   required by substitution of 'template<class 
> Function, class T> decltype (_call_func(forward<Function>(func), typename 
> gens<std::tuple_size<_Tuple>::value>::type(), args)) call_tuple(Function&&, 
> T&&) [with Function = int (*&)(_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*); T = std::tuple<const program* const&, int&, long 
> unsigned int, _cl_device_id**, long unsigned int*>]'
> src/c_wrapper/function.h:106:69:   required by substitution of 
> 'template<template<class ...> class typedef Getter Getter, class Func> 
> decltype (call_tuple(func, this->.get<template<template<class ...> class 
> Convert, class ... Types> template<class ...> class Getter>())) 
> ArgPack<Convert, Types>::call(Func) [with Getter = Getter; Func = Func; 
> Convert = CLArg; Types = {const program* const, int, 
> ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long unsigned int, 
> (ArgType)0>}] [with typedef Getter Getter = __CLArgGetter; Func = int 
> (*)(_cl_program*, unsigned int, long unsigned int, void*, long unsigned 
> int*)]'
> src/c_wrapper/error.h:183:5:   required by substitution of 'template<class 
> Func> decltype (this->.call<template<class> struct __CLArgGetter>(func)) 
> CLArgPack<Types>::clcall(Func, const char*) [with Func = Func; Types = {const 
> program* const, int, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}] [with Func = int (*)(_cl_program*, unsigned int, 
> long unsigned int, void*, long unsigned int*)]'
> src/c_wrapper/error.h:218:51:   required from 'void call_guarded(cl_int 
> (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with ArgTypes2 = {const 
> program* const&, int&, ArgBuffer<_cl_device_id*, (ArgType)1>, ArgBuffer<long 
> unsigned int, (ArgType)0>}; ArgTypes = {_cl_program*, unsigned int, long 
> unsigned int, void*, long unsigned int*}; cl_int = int]'
> src/c_wrapper/clhelper.h:83:67:   required from 'pyopencl_buf<T> 
> get_vec_info(cl_int (*)(ArgTypes ...), const char*, ArgTypes2&& ...) [with T 
> = _cl_device_id*; ArgTypes = {_cl_program*, unsigned int, long unsigned int, 
> void*, long unsigned int*}; ArgTypes2 = {const program* const, int}; cl_int = 
> int]'
> src/c_wrapper/program.h:40:16:   required from here
> src/c_wrapper/function.h:36:62: error: cannot convert 'const program* const' 
> to '_cl_program*' in argument passing
>      -> decltype(func(std::forward<Arg2>(std::get<S>(args))...))
>                                                               ^
> error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
> make: *** [all] Error 1
> _______________________________________________
> PyOpenCL mailing list
> [email protected]
> http://lists.tiker.net/listinfo/pyopencl


_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl

Reply via email to