ok, now i've it compiling (trunk) , but ONLY the src to get the libluabind.a
- patched ./luabind/object.hpp like on page1 of this thread
- patched as post above #36
to compile test you need to add "-ldl" to ./src/makefile command compile line after "%.exe:"
but you return to the same error:
../luabind/class.hpp: In static member function ‘static void luabind::detail::convert_holder<HeldType, ConstHolderType>::apply(void*, void*) [with HeldType = boost::shared_ptr<base>, ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr]’:
../luabind/class.hpp:343: instantiated from ‘static void (* luabind::detail::const_converter<HeldType>::apply(ConstHolderType*))(void*, void*) [with ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, HeldType = boost::shared_ptr<base>]’
../luabind/class.hpp:1159: instantiated from ‘void luabind::class_<T, X1, X2, X3>::init() [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
../luabind/class.hpp:860: instantiated from ‘luabind::class_<T, X1, X2, X3>::class_(const char*) [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
test_held_type.cpp:156: instantiated from here
../luabind/class.hpp:330: error: no matching function for call to ‘luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(boost::shared_ptr<base>&)’
../luabind/class.hpp:132: note: candidates are: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr()
../luabind/class.hpp:132: note: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(const luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr&)
../luabind/class.hpp: In static member function ‘static const void* luabind::detail::extract_underlying_const_type<UnderlyingT, HeldT>::extract(void*) [with UnderlyingT = base, HeldT = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr]’:
../luabind/class.hpp:376: instantiated from ‘static const void* (* luabind::detail::internal_const_holder_extractor<HeldType>::get_extractor(luabind::detail::type_<T>, ConstHolderType*))(void*) [with T = base, ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, HeldType = boost::shared_ptr<base>]’
../luabind/class.hpp:370: instantiated from ‘static const void* (* luabind::detail::internal_const_holder_extractor<HeldType>::apply(luabind::detail::type_<T>))(void*) [with T = base, HeldType = boost::shared_ptr<base>]’
../luabind/class.hpp:1159: instantiated from ‘void luabind::class_<T, X1, X2, X3>::init() [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
../luabind/class.hpp:860: instantiated from ‘luabind::class_<T, X1, X2, X3>::class_(const char*) [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
test_held_type.cpp:156: instantiated from here
../luabind/class.hpp:295: error: no matching function for call to ‘get_pointer(luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr&)’
../luabind/class.hpp: In static member function ‘static void luabind::detail::internal_construct_holder<HeldType, T>::apply(void*, void*) [with HeldType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, T = base]’:
../luabind/class.hpp:479: instantiated from ‘static void (* luabind::detail::const_holder_constructor<HolderType>::get_const_holder_constructor(luabind::detail::type_<T>, ConstHolderType*))(void*, void*) [with T = base, ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, HolderType = boost::shared_ptr<base>]’
../luabind/class.hpp:471: instantiated from ‘static void (* luabind::detail::const_holder_constructor<HolderType>::apply(luabind::detail::type_<T>))(void*, void*) [with T = base, HolderType = boost::shared_ptr<base>]’
../luabind/class.hpp:1159: instantiated from ‘void luabind::class_<T, X1, X2, X3>::init() [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
../luabind/class.hpp:860: instantiated from ‘luabind::class_<T, X1, X2, X3>::class_(const char*) [with T = base, X1 = boost::shared_ptr<base>, X2 = luabind::detail::unspecified, X3 = luabind::detail::unspecified]’
test_held_type.cpp:156: instantiated from here
../luabind/class.hpp:422: error: no matching function for call to ‘luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(base*)’
../luabind/class.hpp:132: note: candidates are: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr()
../luabind/class.hpp:132: note: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(const luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr&)
../luabind/class.hpp: In static member function ‘static const void* luabind::detail::extract_underlying_const_type<UnderlyingT, HeldT>::extract(void*) [with UnderlyingT = derived, HeldT = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr]’:
../luabind/class.hpp:376: instantiated from ‘static const void* (* luabind::detail::internal_const_holder_extractor<HeldType>::get_extractor(luabind::detail::type_<T>, ConstHolderType*))(void*) [with T = derived, ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, HeldType = boost::shared_ptr<base>]’
../luabind/class.hpp:370: instantiated from ‘static const void* (* luabind::detail::internal_const_holder_extractor<HeldType>::apply(luabind::detail::type_<T>))(void*) [with T = derived, HeldType = boost::shared_ptr<base>]’
../luabind/class.hpp:1159: instantiated from ‘void luabind::class_<T, X1, X2, X3>::init() [with T = derived, X1 = base, X2 = boost::shared_ptr<base>, X3 = luabind::detail::unspecified]’
../luabind/class.hpp:860: instantiated from ‘luabind::class_<T, X1, X2, X3>::class_(const char*) [with T = derived, X1 = base, X2 = boost::shared_ptr<base>, X3 = luabind::detail::unspecified]’
test_held_type.cpp:160: instantiated from here
../luabind/class.hpp:295: error: no matching function for call to ‘get_pointer(luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr&)’
../luabind/class.hpp: In static member function ‘static void luabind::detail::internal_construct_holder<HeldType, T>::apply(void*, void*) [with HeldType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, T = derived]’:
../luabind/class.hpp:479: instantiated from ‘static void (* luabind::detail::const_holder_constructor<HolderType>::get_const_holder_constructor(luabind::detail::type_<T>, ConstHolderType*))(void*, void*) [with T = derived, ConstHolderType = luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr, HolderType = boost::shared_ptr<base>]’
../luabind/class.hpp:471: instantiated from ‘static void (* luabind::detail::const_holder_constructor<HolderType>::apply(luabind::detail::type_<T>))(void*, void*) [with T = derived, HolderType = boost::shared_ptr<base>]’
../luabind/class.hpp:1159: instantiated from ‘void luabind::class_<T, X1, X2, X3>::init() [with T = derived, X1 = base, X2 = boost::shared_ptr<base>, X3 = luabind::detail::unspecified]’
../luabind/class.hpp:860: instantiated from ‘luabind::class_<T, X1, X2, X3>::class_(const char*) [with T = derived, X1 = base, X2 = boost::shared_ptr<base>, X3 = luabind::detail::unspecified]’
test_held_type.cpp:160: instantiated from here
../luabind/class.hpp:422: error: no matching function for call to ‘luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(derived*)’
../luabind/class.hpp:132: note: candidates are: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr()
../luabind/class.hpp:132: note: luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr(const luabind::detail::you_need_to_define_a_get_const_holder_function_for_your_smart_ptr&)
make[1]: *** [test_held_type.o] Error 1
let me guess: they don't have updated the "test" 's code

EDIT: from a little chat on their channel with a user, the only one of 7 talking, it's a common problem that test doesn't work, you could ignore it.
He said that there is a patch on the tracker in sourceforge to compile it on debian, but he was using 501.