Skip to Content.
Sympa Menu

cgal-discuss - compiling problem in linux

Subject: CGAL users discussion list

List archive

compiling problem in linux


Chronological Thread 
  • From:
  • To:
  • Subject: compiling problem in linux
  • Date: Sat, 17 Nov 2007 16:12:35 +0100

Hello,
After some challenge with MS .NET 2003, I decided to compile in linux. the
specifications are:

CGAL 3.2
OS: i686_Linux-2.6
Compiler: GNU 3.4.2
Support for: BOOST, X11, GMP, MPFR, CORE, ZLIB, and QT.


by using "make" I get some errors in a file, one of them is:
../../include/CGAL/Polygon_Voronoi_diagram_2.h:331: error: there are no
arguments to `finite_edges_begin' that depend on a template parameter, so a
declaration of `finite_edges_begin' must be available
../../include/CGAL/Polygon_Voronoi_diagram_2.h:331: error: (if you use
`-fpermissive', G++ will accept your code, but allowing the use of an
undeclared name is deprecated)
the line it says is:

typedef Segment_Delaunay_graph_hierarchy_2
<Sdg_traits_2, CGAL::Tag_true, Sdg_ds_2> Sdg_2;
...
void get_edges (std::list<Edge_sites_2>& edges) const
{
edges.clear();
// Go over all finite arcs in the dual graph.
typename Sdg_2::Finite_edges_iterator eit;
for (eit = finite_edges_begin()/*EERROORR*/; eit !=
finite_edges_end()/*EERROORR*/; ++eit)
_compute_primal_edge (*eit, edges);
}

An intresting thing is the same finite_edges_begin() is used in "Alpha"
example but with different definition and without compilation error. I mean
in "Alpha_shape_3.h" it is:

typedef typename Dt::Finite_cells_iterator Finite_cells_iterator;
....
Finite_edges_iterator eit = finite_edges_begin();
for( ; eit != finite_edges_end() ; ++eit){
if (classify(*eit, alpha) == type) *it++ = *eit;
...

what is wrong with finite_edges_begin() or GCC? if installation menu shows
that it supports for GCC 3.4, so why it does have problem?


Thanks,



Archive powered by MHonArc 2.6.16.

Top of Page