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
