Building pgRouting against PostgreSQL 9.1.1 with MinGW

From: Alexander Bruy <alexander(dot)bruy(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Building pgRouting against PostgreSQL 9.1.1 with MinGW
Date: 2011-10-22 12:58:14
Message-ID: CALuHMPBts1CnQDOR2=FaWGyzf8H29Z8oWZkJ40o6Bj95ddGm9w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all,

I have some problems with building pgRouting for PostgreSQL 9.1.1
on Windows XP SP3 with MinGW.

PostgreSQL was compiled successfully, all necessary dependencies
too. But when I try to build pgRouting with TSP and DD features enabled
I get next errors:

Scanning dependencies of target routing_tsp
[ 8%] Building C object extra/tsp/src/CMakeFiles/routing_tsp.dir/tsp.obj
[ 16%] Building CXX object
extra/tsp/src/CMakeFiles/routing_tsp.dir/tsp_solver.obj
In file included from d:/MinGW/msys/1.0/local/include/gaul.h:52:0,
from
g:/src/pgRouting-pgrouting-a0c6c18/extra/tsp/src/tsp_solver.cpp:24:
d:/MinGW/msys/1.0/local/include/gaul/log_util.h:75:46: warning:
'dllimport' attribute ignored
In file included from
d:/MinGW/msys/1.0/local/pgsql/include/server/pg_config_os.h:37:0,
from d:/MinGW/msys/1.0/local/pgsql/include/server/c.h:90,
from
d:/MinGW/msys/1.0/local/pgsql/include/server/postgres.h:47,
from
g:/src/pgRouting-pgrouting-a0c6c18/extra/tsp/src/tsp_solver.cpp:25:
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/winsock2.h:635:33:
error: declaration of
C function 'int gethostname(char*, int)' conflicts with
d:/MinGW/msys/1.0/local/include/gaul/compatibility.h:189:14:
error: previous declaration 'int gethostname(char*, size_t)' here
make[2]: *** [extra/tsp/src/CMakeFiles/routing_tsp.dir/tsp_solver.obj] Error 1
make[1]: *** [extra/tsp/src/CMakeFiles/routing_tsp.dir/all] Error 2
make: *** [all] Error 2

Then I tried to disable TSP feature (less important for me) and run clean
build again. But get another errors:

canning dependencies of target routing_dd
[ 10%] Building C object
extra/driving_distance/src/CMakeFiles/routing_dd.dir/alpha.obj
[ 20%] Building CXX object
extra/driving_distance/src/CMakeFiles/routing_dd.dir/alpha_drivedist.obj
In file included from
d:/MinGW/msys/1.0/local/include/boost/thread/detail/thread_heap_alloc.hpp:15:0,
from d:/MinGW/msys/1.0/local/include/boost/thread/tss.hpp:10,
from
d:/MinGW/msys/1.0/local/include/CGAL/Modular_arithmetic/Residue_type.h:30,
from d:/MinGW/msys/1.0/local/include/CGAL/Residue.h:31,
from d:/MinGW/msys/1.0/local/include/CGAL/Modular_traits.h:24,
from d:/MinGW/msys/1.0/local/include/CGAL/int.h:29,
from
d:/MinGW/msys/1.0/local/include/CGAL/number_type_basic.h:81,
from d:/MinGW/msys/1.0/local/include/CGAL/basic.h:35,
from
d:/MinGW/msys/1.0/local/include/CGAL/Cartesian/Cartesian_base.h:27,
from
d:/MinGW/msys/1.0/local/include/CGAL/Simple_cartesian.h:27,
from
g:/src/pgRouting-pgrouting-a0c6c18/extra/driving_distance/src/alpha_drivedist.cpp:34:
d:/MinGW/msys/1.0/local/include/boost/thread/win32/thread_heap_alloc.hpp:59:40:
warning: inline function 'void*
boost::detail::allocate_raw_heap_memory(unsigned int)' declared as
dllimport: attribute ignored
d:/MinGW/msys/1.0/local/include/boost/thread/win32/thread_heap_alloc.hpp:69:39:
warning: inline function 'void
boost::detail::free_raw_heap_memory(void*)' declared as dllimport:
attribute ignored
[ 30%] Building CXX object
extra/driving_distance/src/CMakeFiles/routing_dd.dir/boost_drivedist.obj
In file included from
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/windows.h:50:0,
from
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/winsock2.h:22,
from
d:/MinGW/msys/1.0/local/pgsql/include/server/pg_config_os.h:37,
from d:/MinGW/msys/1.0/local/pgsql/include/server/c.h:90,
from
d:/MinGW/msys/1.0/local/pgsql/include/server/postgres.h:47,
from
g:/src/pgRouting-pgrouting-a0c6c18/extra/driving_distance/src/drivedist.h:25,
from
g:/src/pgRouting-pgrouting-a0c6c18/extra/driving_distance/src/boost_drivedist.cpp:28:
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/winbase.h:1285:59:
error: 'PVECTORED_EXCEPTION_HANDLER' has not been declared
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/winbase.h:1815:52:
error: 'HEAP_INFORMATION_CLASS' has not been declared
d:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/winbase.h:1819:50:
error: 'HEAP_INFORMATION_CLASS' has not been declared
make[2]: *** [extra/driving_distance/src/CMakeFiles/routing_dd.dir/boost_drivedist.obj]
Error 1
make[1]: *** [extra/driving_distance/src/CMakeFiles/routing_dd.dir/all] Error 2
make: *** [all] Error 2

As I understand this is because there is conflict berween PostgreSQL
emulation of
missing POSIX functionality and existing implementation in winsock.h
and winbase.h.
Any hints or ideas how to fix this errors?

Thanks

P.S.: sorry for my bad English

--
Alexander Bruy

Browse pgsql-general by date

  From Date Subject
Next Message Thomas Kellerer 2011-10-22 13:03:40 Re: adding a column takes FOREVER!
Previous Message miesi 2011-10-22 12:40:19 Re: Anyone using the solaris 11 precompiled binaries on opensolaris snv_134