I am the person who wrote the comment in the Meshpy webpage about the compilation problem with Meshpy. The version I have of gcc is gcc (GCC) 4.1.2 The boost package installed by Fedora is 1.33.1
The error I am getting is in the file foreign_array_wrap.hpp, at line 58:
python setup.py install --home=$HOME
running install
running build
running build_py
running build_ext
building 'meshpy._triangle' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC -DEXTERNAL_TEST=1 -DANSI_DECLARATORS=1 -DTRILIBRARY=1 -I/usr/include/boost -I/usr/local/include/python2.5 -c src/cpp/wrap_triangle.cpp -o build/temp.linux-i686-2.5/src/cpp/wrap_triangle.o
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
src/cpp/foreign_array_wrap.hpp: In static member function ‘static boost::python::api::object::tPODForeignArrayWrapHelper::getitem(FA&, boost::python::tuple)’:
src/cpp/foreign_array_wrap.hpp:58: error: there are no arguments to ‘len’ that depend on a template parameter, so a declaration of ‘len’ must be available
src/cpp/foreign_array_wrap.hpp:58: error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
src/cpp/foreign_array_wrap.hpp: In static member function ‘static boost::python::api::object::tPODForeignArrayWrapHelper::getitem(FA&, boost::python::tuple) [with FA = tForeignArray]’:
It doesn't recognize "len" in the sentence below: if (len(idx) != 2) I removed all these checkings and I manage to compile everything. But of course I still don' t know the source of the problem and the consequences of removins all these len's sentences
Alejandro