[postgis-tickets] [PostGIS] #2333: Can't compile under mingw64 (neither mingw64 or mingw32)

PostGIS trac at osgeo.org
Wed May 15 15:09:08 PDT 2013


#2333: Can't compile under mingw64 (neither mingw64 or mingw32)
--------------------+-------------------------------------------------------
 Reporter:  robe    |       Owner:  colivier     
     Type:  defect  |      Status:  new          
 Priority:  medium  |   Milestone:  PostGIS 2.1.0
Component:  sfcgal  |     Version:  trunk        
 Keywords:          |  
--------------------+-------------------------------------------------------
 I spoke too soon.  I cann''t compile SFCGAL.  I get erros on both
 mingw64-w32 and mingw64-w64 and tehy are completely different errors.

 thw mingw64-w32 I do have compiled with newer version of boost (boost
 1.49.0 and mingw64-w64 is compiled with 1.46.

 Errors for mingw64-w64 look like this:
 CMAKE config

 {{{
 -- The C compiler identification is GNU 4.5.4
 -- The CXX compiler identification is GNU 4.5.4
 -- Check for working C compiler: c:/ming64/mingw64/bin/gcc.exe
 -- Check for working C compiler: c:/ming64/mingw64/bin/gcc.exe -- works
 -- Detecting C compiler ABI info
 -- Detecting C compiler ABI info - done
 -- Check for working CXX compiler: c:/ming64/mingw64/bin/g++.exe
 -- Check for working CXX compiler: c:/ming64/mingw64/bin/g++.exe -- works
 -- Detecting CXX compiler ABI info
 -- Detecting CXX compiler ABI info - done
 -- Boost_USE_STATIC_LIBS=OFF
 -- Boost_USE_MULTITHREAD=ON
 -- Boost version: 1.46.1
 -- Found the following Boost libraries:
 --   date_time
 --   system
 --   thread
 --   serialization
 -- Found GMP: c:/ming64/projects/CGAL/rel-gmp-5.1.1w64/include
 -- GMP_INCLUDE_DIRS = c:/ming64/projects/CGAL/rel-gmp-5.1.1w64/include
 -- GMP_LIBRARIES = c:/ming64/projects/CGAL/rel-gmp-5.1.1w64/lib/libgmp.a
 -- Found MPFR: c:/ming64/projects/CGAL/rel-mpfr-3.1.2w64/include
 -- MPFR_INCLUDE_DIRS = c:/ming64/projects/CGAL/rel-mpfr-3.1.2w64/include
 -- MPFR_LIBRARIES = c:/ming64/projects/CGAL/rel-
 mpfr-3.1.2w64/lib/libmpfr.a
 -- Found CGAL: c:/ming64/projects/CGAL/rel-cgal-4.2w64/include
 -- CGAL  found
 -- Configuring done
 -- Generating done
 -- Build files have been written to:
 C:/ming64/projects/CGAL/SFCGAL-0.2/build/mingw
 }}}

 Then starts running into issues about 20% into make
 {{{
 [ 12%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/distance.c
 pp.obj
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp: In
 functio
 n 'double SFCGAL::algorithm::distance(const SFCGAL::Geometry&, const
 SFCGAL::Geo
 metry&)':
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp:51:9:
 warni
 ng: enumeration value 'TYPE_SOLID' not handled in switch
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp: In
 functio
 n 'double SFCGAL::algorithm::distancePointGeometry(const SFCGAL::Point&,
 const S
 FCGAL::Geometry&)':
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp:79:9:
 warni
 ng: enumeration value 'TYPE_SOLID' not handled in switch
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp: In
 functio
 n 'double SFCGAL::algorithm::distanceLineStringGeometry(const
 SFCGAL::LineString
 &, const SFCGAL::Geometry&)':
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp:184:9:
 warn
 ing: enumeration value 'TYPE_SOLID' not handled in switch
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp: In
 functio
 n 'double SFCGAL::algorithm::distancePolygonGeometry(const
 SFCGAL::Polygon&, con
 st SFCGAL::Geometry&)':
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/distance.cpp:280:9:
 warn
 ing: enumeration value 'TYPE_SOLID' not handled in switch
 [ 13%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/distance3d
 .cpp.obj
 [ 15%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/extrude.cp
 p.obj
 [ 16%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/force3D.cp
 p.obj
 [ 17%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/intersecti
 on.cpp.obj
 [ 18%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/Intersecti
 on2D.cpp.obj
 [ 20%] Building CXX object
 src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/Intersecti
 on3D.cpp.obj
 In file included from
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/
 boost/thread/win32/basic_timed_mutex.hpp:14:0,
                  from
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/
 boost/thread/win32/mutex.hpp:8,
                  from
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/
 boost/thread/mutex.hpp:14,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Kd_tr
 ee.h:34,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 nal/K_neighbor_search.h:28,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Ortho
 gonal_k_neighbor_search.h:24,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 nal/AABB_tree/AABB_search_tree.h:24,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/AABB_
 tree.h:28,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Polyh
 edral_mesh_domain_3.h:33,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 section_of_Polyhedra_3_refinement_visitor.h:32,
                  from
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/In
 tersection3D.cpp:25:
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/boost/thread/win32/int
 erlocked_read.hpp: In function 'void
 boost::detail::interlocked_write_release(vo
 id* volatile*, void*)':
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/boost/thread/win32/int
 erlocked_read.hpp:71:13: error: cast from 'void*' to 'long int' loses
 precision
 In file included from
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/
 boost/thread/win32/mutex.hpp:8:0,
                  from
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/
 boost/thread/mutex.hpp:14,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Kd_tr
 ee.h:34,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 nal/K_neighbor_search.h:28,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Ortho
 gonal_k_neighbor_search.h:24,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 nal/AABB_tree/AABB_search_tree.h:24,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/AABB_
 tree.h:28,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/Polyh
 edral_mesh_domain_3.h:33,
                  from c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/inter
 section_of_Polyhedra_3_refinement_visitor.h:32,
                  from
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/In
 tersection3D.cpp:25:
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/boost/thread/win32/bas
 ic_timed_mutex.hpp: In member function 'void*
 boost::detail::basic_timed_mutex::
 get_event()':
 c:/ming64/projects/boost/rel-1.46w64/include/boost-1_46_1/boost/thread/win32/bas
 ic_timed_mutex.hpp:183:43: error: cast from 'void*' to 'long int' loses
 precisio
 n
 In file included from
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/In
 tersection3D.cpp:24:0:
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 .h: In member function 'bool
 CGAL::internal_IOP::Order_along_a_halfedge<Polyhedr
 on, Nodes_vector, Is_const>::operator()(int, int) const [with Polyhedron =
 CGAL:
 :Polyhedron_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>, Nodes_vector
 = CGA
 L::internal_IOP::Triangle_segment_intersection_points<CGAL::Polyhedron_3<CGAL::E
 peck, SFCGAL::Items_with_mark_on_hedge>, CGAL::Epeck,
 CGAL::internal_IOP::Predic
 ates_on_constructions, true>, Is_const = CGAL::Boolean_tag<false>]':
 c:\ming64\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/../../../../x86_64-w64
 -mingw32/include/c++/4.5.4/bits/stl_algo.h:2125:4:   instantiated from
 'void std
 ::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare)
 [with
  _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*,
 std::vector<int> >,
 _Compare =
 CGAL::internal_IOP::Order_along_a_halfedge<CGAL::Polyhedron_3<CGAL::E
 peck, SFCGAL::Items_with_mark_on_hedge>,
 CGAL::internal_IOP::Triangle_segment_in
 tersection_points<CGAL::Polyhedron_3<CGAL::Epeck,
 SFCGAL::Items_with_mark_on_hed
 ge>, CGAL::Epeck, CGAL::internal_IOP::Predicates_on_constructions, true>,
 CGAL::
 Boolean_tag<false> >]'
 c:\ming64\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/../../../../x86_64-w64
 -mingw32/include/c++/4.5.4/bits/stl_algo.h:2192:4:   instantiated from
 'void std
 ::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator,
 _Compare)
  [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*,
 std::vector<in
 t> >, _Compare =
 CGAL::internal_IOP::Order_along_a_halfedge<CGAL::Polyhedron_3<C
 GAL::Epeck, SFCGAL::Items_with_mark_on_hedge>,
 CGAL::internal_IOP::Triangle_segm
 ent_intersection_points<CGAL::Polyhedron_3<CGAL::Epeck,
 SFCGAL::Items_with_mark_
 on_hedge>, CGAL::Epeck, CGAL::internal_IOP::Predicates_on_constructions,
 true>,
 CGAL::Boolean_tag<false> >]'
 c:\ming64\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/../../../../x86_64-w64
 -mingw32/include/c++/4.5.4/bits/stl_algo.h:5252:4:   instantiated from
 'void std
 ::sort(_RAIter, _RAIter, _Compare) [with _RAIter =
 __gnu_cxx::__normal_iterator<
 int*, std::vector<int> >, _Compare =
 CGAL::internal_IOP::Order_along_a_halfedge<
 CGAL::Polyhedron_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>,
 CGAL::interna
 l_IOP::Triangle_segment_intersection_points<CGAL::Polyhedron_3<CGAL::Epeck,
 SFCG
 AL::Items_with_mark_on_hedge>, CGAL::Epeck,
 CGAL::internal_IOP::Predicates_on_co
 nstructions, true>, CGAL::Boolean_tag<false> >]'
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 _refinement_visitor.h:677:5:   instantiated from 'void
 CGAL::Node_visitor_refine
 _polyhedra<Polyhedron, Kernel,
 Mark_intersection_halfedges>::sort_vertices_along
 _hedge(std::vector<int>&, CGAL::Node_visitor_refine_polyhedra<Polyhedron,
 Kernel
 , Mark_intersection_halfedges>::Halfedge_handle, const Nodes_vector&)
 [with Node
 s_vector =
 CGAL::internal_IOP::Triangle_segment_intersection_points<CGAL::Polyhe
 dron_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>, CGAL::Epeck,
 CGAL::intern
 al_IOP::Predicates_on_constructions, true>, Polyhedron =
 CGAL::Polyhedron_3<CGAL
 ::Epeck, SFCGAL::Items_with_mark_on_hedge>, Kernel = CGAL::Epeck,
 Mark_intersect
 ion_halfedges = CGAL::Boolean_tag<true>,
 CGAL::Node_visitor_refine_polyhedra<Pol
 yhedron, Kernel, Mark_intersection_halfedges>::Halfedge_handle =
 CGAL::internal:
 :In_place_list_iterator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::I_Polyhedr
 on_halfedge<SFCGAL::Halfedge_with_mark<CGAL::HalfedgeDS_list_types<CGAL::Epeck,
 CGAL::I_Polyhedron_derived_items_3<SFCGAL::Items_with_mark_on_hedge>,
 std::alloc
 ator<int> > > > >,
 std::allocator<CGAL::HalfedgeDS_in_place_list_halfedge<CGAL::
 I_Polyhedron_halfedge<SFCGAL::Halfedge_with_mark<CGAL::HalfedgeDS_list_types<CGA
 L::Epeck,
 CGAL::I_Polyhedron_derived_items_3<SFCGAL::Items_with_mark_on_hedge>,
 std::allocator<int> > > > > > >]'
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 _refinement_visitor.h:1494:7:   instantiated from 'void
 CGAL::Node_visitor_refin
 e_polyhedra<Polyhedron, Kernel,
 Mark_intersection_halfedges>::finalize(const Nod
 es_vector&) [with Nodes_vector =
 CGAL::internal_IOP::Triangle_segment_intersecti
 on_points<CGAL::Polyhedron_3<CGAL::Epeck,
 SFCGAL::Items_with_mark_on_hedge>, CGA
 L::Epeck, CGAL::internal_IOP::Predicates_on_constructions, true>,
 Polyhedron = C
 GAL::Polyhedron_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>, Kernel =
 CGAL:
 :Epeck, Mark_intersection_halfedges = CGAL::Boolean_tag<true>]'
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 .h:1850:7:   instantiated from 'OutputIterator
 CGAL::Intersection_of_Polyhedra_3
 <Polyhedron, Kernel, Node_visitor, Node_storage_type,
 Use_const_polyhedron>::mai
 n_run(OutputIterator, bool) [with OutputIterator =
 std::back_insert_iterator<std
 ::list<std::vector<CGAL::Point_3<CGAL::Epeck> > > >, Polyhedron =
 CGAL::Polyhedr
 on_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>, Kernel = CGAL::Epeck,
 Node_
 visitor =
 CGAL::Node_visitor_refine_polyhedra<CGAL::Polyhedron_3<CGAL::Epeck, SF
 CGAL::Items_with_mark_on_hedge>, CGAL::Epeck, CGAL::Boolean_tag<true> >,
 Node_st
 orage_type = CGAL::internal_IOP::Predicates_on_constructions,
 Use_const_polyhedr
 on = CGAL::Boolean_tag<false>]'
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 .h:1956:24:   instantiated from 'OutputIterator
 CGAL::Intersection_of_Polyhedra_
 3<Polyhedron, Kernel, Node_visitor, Node_storage_type,
 Use_const_polyhedron>::op
 erator()(CGAL::Intersection_of_Polyhedra_3<Polyhedron, Kernel,
 Node_visitor, Nod
 e_storage_type, Use_const_polyhedron>::Polyhedron_ref,
 CGAL::Intersection_of_Pol
 yhedra_3<Polyhedron, Kernel, Node_visitor, Node_storage_type,
 Use_const_polyhedr
 on>::Polyhedron_ref, OutputIterator) [with OutputIterator =
 std::back_insert_ite
 rator<std::list<std::vector<CGAL::Point_3<CGAL::Epeck> > > >, Polyhedron =
 CGAL:
 :Polyhedron_3<CGAL::Epeck, SFCGAL::Items_with_mark_on_hedge>, Kernel =
 CGAL::Epe
 ck, Node_visitor =
 CGAL::Node_visitor_refine_polyhedra<CGAL::Polyhedron_3<CGAL::
 Epeck, SFCGAL::Items_with_mark_on_hedge>, CGAL::Epeck,
 CGAL::Boolean_tag<true> >
 , Node_storage_type = CGAL::internal_IOP::Predicates_on_constructions,
 Use_const
 _polyhedron = CGAL::Boolean_tag<false>,
 CGAL::Intersection_of_Polyhedra_3<Polyhe
 dron, Kernel, Node_visitor, Node_storage_type,
 Use_const_polyhedron>::Polyhedron
 _ref = CGAL::Polyhedron_3<CGAL::Epeck,
 SFCGAL::Items_with_mark_on_hedge>&]'
 c:/ming64/projects/CGAL/SFCGAL-0.2/src/SFCGAL/algorithm/Intersection3D.cpp:124:6
 4:   instantiated from here
 c:/ming64/projects/CGAL/rel-
 cgal-4.2w64/include/CGAL/intersection_of_Polyhedra_3
 .h:187:40: warning: unused variable 'p'
 make[2]: ***
 [src/CMakeFiles/SFCGAL.dir/SFCGAL/algorithm/Intersection3D.cpp.obj]
  Error 1
 make[1]: *** [src/CMakeFiles/SFCGAL.dir/all] Error 2
 make: *** [all] Error 2
 }}}

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/2333>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list