[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