[pgrouting-dev] Reg: Compile error in KSP with PostgreSQL 8.4

Manikanta Kondeti mani.iiit123 at gmail.com
Mon Jun 22 15:14:02 PDT 2015


Steve,

That's giving me an error. I understood the workflow, Here is the main
thing that I've to look at :[line 36]  POSTGRESQL_PG_CONFIG =
"/usr/bin/pg_config" and that is of version 8.4.22. From this the variable
POSTGRESQL_VERSION_STRING is set which makes all the variables in
CMakeLists.txt to 8.4. This makes the whole POSTGRESQL variables in
CMakeLists.txt to 8.4. We can see that from cmake log.

So if we can control this line 36 to the PG_VERSION we specify, then
everything works fine. I will let you know if I got something interesting.
I'd be highly thankful if you suggest something at this point.

- Mani

On Tue, Jun 23, 2015 at 3:16 AM, Stephen Woodbridge <woodbri at swoodbridge.com
> wrote:

> Try changing it to this:
>
> # Checking POSTGRESQL_PG_CONFIG
>     find_program(POSTGRESQL_PG_CONFIG NAMES pg_config
>         PATHS
>         /usr/lib/postgresql/${PG_VERSION}/bin/
>         NO_DEFAULT_PATH
>         )
>
> also read this:
>
> cmake --help-command FIND_PROGRAM
>
> -Steve
>
> On 6/22/2015 4:43 PM, Manikanta Kondeti wrote:
>
>> Steve,
>>
>> Thanks for the steps. I am thinking in a  different method. I just
>> pushed a branch cmake-postgres. In File FindPostgreSQL.cmake on line no:
>> 19, PG_VERSION is a argument passed while running cmake. ( cmake
>> -DPG_VERSION=9.* ).
>>
>> * Take an argument from  command line.
>> *  Modify the present FindPostgreSQL.cmake, build it until it is working
>> properly.
>>
>> I am stuck here at this point.  See line no:  43 (
>> COMMAND${POSTGRESQL_PG_CONFIG}--version)  this is giving 8.4 as
>> defaults. Therefore variables after this are set with 8.4, I need to
>> somehow understand and change it.
>>
>> If you are free now we can discuss this.
>> - Mani
>>
>> On Tue, Jun 23, 2015 at 1:18 AM, Stephen Woodbridge
>> <woodbri at swoodbridge.com <mailto:woodbri at swoodbridge.com>> wrote:
>>
>>     Mani wrote:
>>
>>         I'm working on this already. Since this is my first time on
>>         cmake and
>>         dependencies I might need some help from you guys.
>>
>>         I'll try my best to make it working.
>>
>>
>>     Start with the message below and ask where you get stuck. The steps
>> are:
>>
>>     1. copy the FindPostgreSQL.cmake linked below to the pgrouting/cmake
>>
>>     2. this will break the build stuff because this new script sets
>>     different variables than the existing build expects.
>>
>>     3. sort this out and get it to build like it did before using the
>>     new script
>>
>>     4. when it is building like before, add the variable to set the
>>     version in the commandline and and use that to set
>>     PostgreSQL_ADDITIONAL_VERSIONS  and it should work.
>>
>>     Ask specific questions if you get stuck, check in your code where I
>>     can look at it.
>>
>>     There is a ticket for this:
>>     https://github.com/pgRouting/pgrouting/issues/301
>>
>>     -Steve
>>
>>
>>     On 6/22/2015 12:15 PM, Stephen Woodbridge wrote:
>>
>>         Mani,
>>
>>         You probably want to start with this version of
>> FindPostgreSQL.cmake
>>
>>
>> https://github.com/Kitware/CMake/blob/master/Modules/FindPostgreSQL.cmake
>>
>>           It lets you specify PostgreSQL_ADDITIONAL_VERSIONS  variable
>>         and if
>>         this is set to the version you want it will use this version if
>>         found.
>>
>>         I think that the return variables that this script sets are
>>         different
>>           from what we expect in pgrouting so you might need to set the
>>         expected variables with the correct values also.
>>
>>         So, I would replace the existing FindPostgreSQL.cmake with this
>>         script and then try to make it work with the existing build
>> system,
>>         then look at reading a command line version and setting the
>> variable
>>         above before calling find postgresql.
>>
>>         -Steve
>>
>>         On 6/22/2015 11:50 AM, Manikanta Kondeti wrote:
>>
>>             Hi Steve,
>>
>>             I've tried my best to update cmake/FindPostgreSQL.cmake  and
>>             CMakeLists.txt, but the build was not successful. I've
>>             changed all
>>             the POSTGRES variables to 9.4, cmake executed properly, but
>>             while
>>             compiling(make) there is a error saying "Postgres.h" not
>>             found. Can
>>             you share your CMakeLists.txt and
>>             cmake/FindPostgresql..cmake. I am
>>             on the version 9.4.
>>
>>             I think this needs to be solved for the next release. We need
>> to
>>             the pass the postgresql version to build,  like the option you
>>             said "DUSE_PG=9.x". But unfortunately it is not working
>>             right now.
>>             I'll try to read about cmake and see what I can do. I will
>>             update
>>             you.
>>
>>             Thank you, Mani
>>
>>             On Mon, Jun 22, 2015 at 8:20 PM, Stephen Woodbridge
>>             <woodbri at swoodbridge.com <mailto:woodbri at swoodbridge.com>
>>             <mailto:woodbri at swoodbridge.com
>>
>>             <mailto:woodbri at swoodbridge.com>>> wrote:
>>
>>             On 6/22/2015 10:37 AM, Manikanta Kondeti wrote:
>>
>>             Hi,
>>
>>             I am facing an error while building from source. This is that
>>             issue: https://github.com/pgRouting/pgrouting/issues/109
>>
>>             How to resolve that?  Changing Pg version to 9.1 in
>>             CMakeLists.txt
>>             is not working. I have 9.1 and 9.4 postgresql versions
>>             installed in
>>             my system. Help me out in resolving this.
>>
>>
>>             Mani,
>>
>>             Sorry, the CMakeLists.txt files built for pgrouting 2.x were
>> not
>>             designed for support multiple versions installed on the same
>>             system. This is a problem for me because I have 9.2, 9.3,
>>             and 9.4
>>             installed and I can only build and install on 9.4.
>>
>>             The solution id to update the CMakeLists.txt and specifically
>>             cmake/FindPostgreSQL.cmake which so you can do something like
>>
>>             cd build cmake -DUSE_PG=9.x ..
>>
>>             I took a quick look at doing this a while back but
>>             cmake/FindPostgreSQL.cmake needs to be replaced and other
>>             changes
>>             are needed and I didn't have time to make the changes and get
>> it
>>             working.
>>
>>             tools/test-runner.pl <http://test-runner.pl>
>>             <http://test-runner.pl> already support
>>             options for pg versions and ports so only the build system is
>>             broken in this regard.
>>
>>             If you want to read up on CMake and get this working a pull
>>             request would be great!
>>
>>             -Steve
>>
>>             _______________________________________________ pgrouting-dev
>>             mailing list pgrouting-dev at lists.osgeo.org
>>             <mailto:pgrouting-dev at lists.osgeo.org>
>>             <mailto:pgrouting-dev at lists.osgeo.org
>>             <mailto:pgrouting-dev at lists.osgeo.org>>
>>             http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>>
>>
>>
>>
>>             _______________________________________________ pgrouting-dev
>>             mailing list pgrouting-dev at lists.osgeo.org
>>             <mailto:pgrouting-dev at lists.osgeo.org>
>>             http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>>
>>
>>         _______________________________________________ pgrouting-dev
>>         mailing
>>         list pgrouting-dev at lists.osgeo.org
>>         <mailto:pgrouting-dev at lists.osgeo.org>
>>         http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>>
>>
>>     _______________________________________________
>>     pgrouting-dev mailing list
>>     pgrouting-dev at lists.osgeo.org <mailto:pgrouting-dev at lists.osgeo.org>
>>     http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>>
>>
>>
>>
>> _______________________________________________
>> pgrouting-dev mailing list
>> pgrouting-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>>
>>
> _______________________________________________
> pgrouting-dev mailing list
> pgrouting-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/pgrouting-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pgrouting-dev/attachments/20150623/f5c1585d/attachment.html>


More information about the pgrouting-dev mailing list