I tried to build this on Cygwin (latest release). Following the instructions given, I got to the "./Build" step, which gave this output:
gcc-4 -Iblib/headers -Isource -I/usr/lib/perl5/5.10/i686-cygwin/CORE --std=gnu++0x -ggdb3 -DDEBUG -Wall -Wshadow -Wnon-virtual-dtor -Wsign-promo -Wextra -Winvalid-pch -c -DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -g3 -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -x c++ -O3 -o _build/array.o perl++/source/array.C
In file included from blib/headers/perl++/perl++.h:41,
from perl++/source/array.C:2:
<built-in>:1:1: warning: "__STDC__" redefined
<built-in>: warning: this is the location of the previous definition
<built-in>:2:1: warning: "__STDC_HOSTED__" redefined
<built-in>: warning: this is the location of the previous definition
In file included from perl++/source/config.h:2,
from blib/headers/perl++/perl++.h:41,
from perl++/source/array.C:2:
/usr/lib/perl5/5.10/i686-cygwin/CORE/config.h:2839:1: warning: "VOIDUSED" redefined
In file included from perl++/source/internal.h:6,
from perl++/source/array.C:1:
/usr/lib/perl5/5.10/i686-cygwin/CORE/perl.h:32:1: warning: this is the location of the previous definition
In file included from blib/headers/perl++/perl++.h:49,
from perl++/source/array.C:2:
blib/headers/perl++/interpreter.h:8: error: expected initializer before ‘->’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_1<R, A1, typename boost::disable_if<typename boost::is_convertible<perl::implementation::array::Temp, A1>::type, void>::type>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:257: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:257: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_2<R, A1, A2>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:275: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:275: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:275: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_3<R, A1, A2, A3>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:283: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:283: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:283: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:283: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_v1<A1, typename boost::disable_if<typename boost::is_convertible<perl::implementation::array::Temp, A1>::type, void>::type>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:308: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:308: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_v2<A1, A2>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:326: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:326: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:326: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_sub_v3<A1, A2, A3>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:335: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:335: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:335: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:335: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_method_1<R, T, A1, typename boost::disable_if<typename boost::is_convertible<perl::implementation::array::Temp, A1>::type, void>::type>::method(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:401: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:401: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::export_method_v1<T, A1, typename boost::disable_if<typename boost::is_convertible<perl::implementation::array::Temp, A1>::type, void>::type>::method(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:422: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:422: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::constructor_exporter<T>::arg1<A1>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:514: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:514: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::constructor_exporter<T>::arg2<A1, A2>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:523: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:523: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:523: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: In static member function ‘static void perl::implementation::constructor_exporter<T>::arg3<A1, A2, A3>::subroutine(interpreter*, perl::CV*)’:
blib/headers/perl++/interpreter.h:532: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/interpreter.h:532: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:532: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h:532: error: expected primary-expression before ‘>’ token
blib/headers/perl++/interpreter.h: At global scope:
blib/headers/perl++/interpreter.h:786: error: expected initializer before ‘->’ token
blib/headers/perl++/interpreter.h:906: error: expected initializer before ‘->’ token
blib/headers/perl++/interpreter.h:909: error: expected initializer before ‘->’ token
In file included from blib/headers/perl++/perl++.h:50,
from perl++/source/array.C:2:
blib/headers/perl++/typecasts.h: In static member function ‘static const std::pair<_T1, _T2> perl::typecast::typemap<std::pair<_T1, _T2>, void>::cast_to(const perl::implementation::scalar::Value&)’:
blib/headers/perl++/typecasts.h:30: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/typecasts.h:30: error: expected primary-expression before ‘(’ token
blib/headers/perl++/typecasts.h:30: error: expected primary-expression before ‘>’ token
blib/headers/perl++/typecasts.h:30: error: expected primary-expression before ‘>’ token
blib/headers/perl++/typecasts.h: In static member function ‘static const std::vector<T, std::allocator<_CharT> > perl::typecast::typemap<std::vector<T, std::allocator<_CharT> >, void>::cast_to(const perl::Array&)’:
blib/headers/perl++/typecasts.h:48: error: ‘typecast_to’ was not declared in this scope
blib/headers/perl++/typecasts.h:48: error: expected primary-expression before ‘>’ token
error building _build/array.o from 'perl++/source/array.C' at /usr/local/lib/perl5/5.10/ExtUtils/CBuilder/Base.pm line 115.