[pgrouting-dev] custom compile

Hi,

I am trying to compile all the mapserver stuff in a custom directory /opt/emap. Everything built fine except pgrouting.
How can I define postgresql, cgal, boost directories during cmake process?
I was hoping that they were defined in CMakeLists.txt but it seems I am missing something...

/opt/src/pgrouting-1.05# cmake -DBoost_INCLUDE_DIR=/opt/src/boost_1_45_0 -DWITH_DD=ON -DCGAL_INCLUDE_DIR=/opt/emap -DCGAL_LIBRARIES=/opt/emap -DPOSTGRESQL_INCLUDE_DIR=/opt/emap -DPOSTGRESQL_LIBRARIES=/opt/emap -DSQL_INSTALL_PATH=/opt/emap .
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
Boost headers were found here: /opt/src/boost_1_45_0
Output directory for libraries is set to /opt/emap/lib/postgresql
-- Found PGROUTING_CORE core: /opt/src/pgrouting-1.05/core/src
Installation directory for libraries is set to /opt/emap/lib/postgresql and for SQL files is set to /usr/share/postlbs
-- Configuring done
WARNING: Target "routing_dd" requests linking to directory "/opt/emap". Targets may link only to libraries. CMake is dropping the item.
-- Generating done
-- Build files have been written to: /opt/src/pgrouting-1.05

Emre ERSİN

Hi,

This is an interesting question.
Actually (at least I) haven’t thought about this yet.

I know that at least SQL install path is defined in line 67 in the file:
https://github.com/pgRouting/pgrouting/blob/v1.05/CMakeLists.txt#L67
(I actually just changed it to /usr/share/pgrouting recently in the development branch, because “postlbs” was an idea in the beginning of pgRouting we won’t follow anymore)

I suppose that there should be a way to configure customs paths with CMAKE, but without reading more about it I don’t know how. SQL path might be hard-coded though. If someone knows what could be done and knows better, please let me know.

Daniel

2010/12/1 Emre Ersin <emree@mobiliz.com.tr>

Hi,

I am trying to compile all the mapserver stuff in a custom directory /opt/emap. Everything built fine except pgrouting.
How can I define postgresql, cgal, boost directories during cmake process?
I was hoping that they were defined in CMakeLists.txt but it seems I am missing something…

/opt/src/pgrouting-1.05# cmake -DBoost_INCLUDE_DIR=/opt/src/boost_1_45_0 -DWITH_DD=ON -DCGAL_INCLUDE_DIR=/opt/emap -DCGAL_LIBRARIES=/opt/emap -DPOSTGRESQL_INCLUDE_DIR=/opt/emap -DPOSTGRESQL_LIBRARIES=/opt/emap -DSQL_INSTALL_PATH=/opt/emap .
– The C compiler identification is GNU
– The CXX compiler identification is GNU
– Check for working C compiler: /usr/bin/gcc
– Check for working C compiler: /usr/bin/gcc – works
– Detecting C compiler ABI info
– Detecting C compiler ABI info - done
– Check for working CXX compiler: /usr/bin/c++
– Check for working CXX compiler: /usr/bin/c++ – works
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - done
Boost headers were found here: /opt/src/boost_1_45_0
Output directory for libraries is set to /opt/emap/lib/postgresql
– Found PGROUTING_CORE core: /opt/src/pgrouting-1.05/core/src
Installation directory for libraries is set to /opt/emap/lib/postgresql and for SQL files is set to /usr/share/postlbs
– Configuring done
WARNING: Target “routing_dd” requests linking to directory “/opt/emap”. Targets may link only to libraries. CMake is dropping the item.
– Generating done
– Build files have been written to: /opt/src/pgrouting-1.05

Emre ERSİN


pgrouting-dev mailing list
pgrouting-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/pgrouting-dev


Georepublic UG & Georepublic Japan
eMail: daniel.kastl@georepublic.de
Web: http://georepublic.de

Daniel,

I'm not a cmake expert in fact I hardly know anything about it, but looking at the file I would assume that if you want to redefine it in cmake then you would replace the existing line with something like:

IF (NOT SQL_INSTALL_PATH)
   SET(SQL_INSTALL_PATH /usr/share/pgrouting)
ENDIF(NOT SQL_INSTALL_PATH)

And then when you run want to override it you do something like:

SQL_INSTALL_PATH=/opt/emap/pgrouting cmake

or maybe

cmake SQL_INSTALL_PATH=/opt/emap/pgrouting

-Steve W

On 12/1/2010 9:36 PM, Daniel Kastl wrote:

Hi,

This is an interesting question.
Actually (at least I) haven't thought about this yet.

I know that at least SQL install path is defined in line 67 in the file:
https://github.com/pgRouting/pgrouting/blob/v1.05/CMakeLists.txt#L67
(I actually just changed it to /usr/share/pgrouting recently in the
development branch, because "postlbs" was an idea in the beginning of
pgRouting we won't follow anymore)

I suppose that there should be a way to configure customs paths with
CMAKE, but without reading more about it I don't know how. SQL path
might be hard-coded though. If someone knows what could be done and
knows better, please let me know.

Daniel

2010/12/1 Emre Ersin <emree@mobiliz.com.tr <mailto:emree@mobiliz.com.tr>>

    Hi,

    I am trying to compile all the mapserver stuff in a custom directory
    /opt/emap. Everything built fine except pgrouting.
    How can I define postgresql, cgal, boost directories during cmake
    process?
    I was hoping that they were defined in CMakeLists.txt but it seems I
    am missing something...

    /opt/src/pgrouting-1.05# cmake
    -DBoost_INCLUDE_DIR=/opt/src/boost_1_45_0 -DWITH_DD=ON
    -DCGAL_INCLUDE_DIR=/opt/emap -DCGAL_LIBRARIES=/opt/emap
    -DPOSTGRESQL_INCLUDE_DIR=/opt/emap -DPOSTGRESQL_LIBRARIES=/opt/emap
    -DSQL_INSTALL_PATH=/opt/emap .
    -- The C compiler identification is GNU
    -- The CXX compiler identification is GNU
    -- Check for working C compiler: /usr/bin/gcc
    -- Check for working C compiler: /usr/bin/gcc -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    Boost headers were found here: /opt/src/boost_1_45_0
    Output directory for libraries is set to /opt/emap/lib/postgresql
    -- Found PGROUTING_CORE core: /opt/src/pgrouting-1.05/core/src
    Installation directory for libraries is set to
    /opt/emap/lib/postgresql and for SQL files is set to /usr/share/postlbs
    -- Configuring done
    WARNING: Target "routing_dd" requests linking to directory
    "/opt/emap". Targets may link only to libraries. CMake is dropping
    the item.
    -- Generating done
    -- Build files have been written to: /opt/src/pgrouting-1.05

    Emre ERSİN

    _______________________________________________
    pgrouting-dev mailing list
    pgrouting-dev@lists.osgeo.org <mailto:pgrouting-dev@lists.osgeo.org>
    http://lists.osgeo.org/mailman/listinfo/pgrouting-dev

--
Georepublic UG & Georepublic Japan
eMail: daniel.kastl@georepublic.de <mailto:daniel.kastl@georepublic.de>
Web: http://georepublic.de/&gt;

_______________________________________________
pgrouting-dev mailing list
pgrouting-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/pgrouting-dev

Hi Steve,

Thank you! At least you’re more programmer than I am. :wink:
Well, let’s see if there is a way to clean up and simplify this CMakeLists.txt file a bit.
I haven’t studied Cmake yet either.

Any other objections or something to add to the wishlist from others?

Daniel

2010/12/2 Stephen Woodbridge <woodbri@swoodbridge.com>

Daniel,

I’m not a cmake expert in fact I hardly know anything about it, but looking at the file I would assume that if you want to redefine it in cmake then you would replace the existing line with something like:

IF (NOT SQL_INSTALL_PATH)
SET(SQL_INSTALL_PATH /usr/share/pgrouting)
ENDIF(NOT SQL_INSTALL_PATH)

And then when you run want to override it you do something like:

SQL_INSTALL_PATH=/opt/emap/pgrouting cmake

or maybe

cmake SQL_INSTALL_PATH=/opt/emap/pgrouting

-Steve W

On 12/1/2010 9:36 PM, Daniel Kastl wrote:

Hi,

This is an interesting question.
Actually (at least I) haven’t thought about this yet.

I know that at least SQL install path is defined in line 67 in the file:
https://github.com/pgRouting/pgrouting/blob/v1.05/CMakeLists.txt#L67
(I actually just changed it to /usr/share/pgrouting recently in the
development branch, because “postlbs” was an idea in the beginning of
pgRouting we won’t follow anymore)

I suppose that there should be a way to configure customs paths with
CMAKE, but without reading more about it I don’t know how. SQL path
might be hard-coded though. If someone knows what could be done and
knows better, please let me know.

Daniel

2010/12/1 Emre Ersin <emree@mobiliz.com.tr mailto:[emree@mobiliz.com.tr](mailto:emree@mobiliz.com.tr)>

Hi,

I am trying to compile all the mapserver stuff in a custom directory
/opt/emap. Everything built fine except pgrouting.
How can I define postgresql, cgal, boost directories during cmake
process?
I was hoping that they were defined in CMakeLists.txt but it seems I
am missing something…

/opt/src/pgrouting-1.05# cmake
-DBoost_INCLUDE_DIR=/opt/src/boost_1_45_0 -DWITH_DD=ON
-DCGAL_INCLUDE_DIR=/opt/emap -DCGAL_LIBRARIES=/opt/emap
-DPOSTGRESQL_INCLUDE_DIR=/opt/emap -DPOSTGRESQL_LIBRARIES=/opt/emap
-DSQL_INSTALL_PATH=/opt/emap .
– The C compiler identification is GNU
– The CXX compiler identification is GNU
– Check for working C compiler: /usr/bin/gcc
– Check for working C compiler: /usr/bin/gcc – works
– Detecting C compiler ABI info
– Detecting C compiler ABI info - done
– Check for working CXX compiler: /usr/bin/c++
– Check for working CXX compiler: /usr/bin/c++ – works
– Detecting CXX compiler ABI info
– Detecting CXX compiler ABI info - done
Boost headers were found here: /opt/src/boost_1_45_0
Output directory for libraries is set to /opt/emap/lib/postgresql
– Found PGROUTING_CORE core: /opt/src/pgrouting-1.05/core/src
Installation directory for libraries is set to
/opt/emap/lib/postgresql and for SQL files is set to /usr/share/postlbs
– Configuring done
WARNING: Target “routing_dd” requests linking to directory
“/opt/emap”. Targets may link only to libraries. CMake is dropping
the item.
– Generating done
– Build files have been written to: /opt/src/pgrouting-1.05

Emre ERSİN


pgrouting-dev mailing list

pgrouting-dev@lists.osgeo.org mailto:[pgrouting-dev@lists.osgeo.org](mailto:pgrouting-dev@lists.osgeo.org)

http://lists.osgeo.org/mailman/listinfo/pgrouting-dev


Georepublic UG & Georepublic Japan

eMail: daniel.kastl@georepublic.de mailto:[daniel.kastl@georepublic.de](mailto:daniel.kastl@georepublic.de)
Web: http://georepublic.de <http://georepublic.de/>


pgrouting-dev mailing list
pgrouting-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/pgrouting-dev


pgrouting-dev mailing list
pgrouting-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/pgrouting-dev


Georepublic UG & Georepublic Japan
eMail: daniel.kastl@georepublic.de
Web: http://georepublic.de