modifying in the libpg files

From: "Islam Hegazy" <islheg(at)gmail(dot)com>
To: <pgsql-interfaces(at)postgresql(dot)org>
Subject: modifying in the libpg files
Date: 2007-04-22 01:40:29
Message-ID: 001401c7847f$3b42b910$0d0e9f88@pc.cpsc.ucalgary.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces


Hi there
I am a grad student in CS University of Calgary. I work on project to modify the behavior of the table functions to return on iterative base instead of materialization. So far I have succeeded in doing this it seems now that I am one step away from the end. I face a problem now with the front-end, how to display the rows as they are received. That is I want to call 'PrintQueryTuples' from within 'PQexecFinish' instead of 'SendQuery'. 'PQexecFinish' is defined in '../src/interfaces/libpq/fe-exec.c' and 'PrintQueryTuples' is defined in '../src/bin/psql/common.c'

I made the following steps:
1) redefined 'PrintQueryResults' in common.c to be extern (not static as the initial definition) to be able to use it elsewhere 2) added a declaration for ''PrintQueryResults' in common.h, to tell other files about it
3) removed 'PrintQueryResults' invocation from 'SendQuery' in common.c
4) added #include "../bin/psql/common.h" to fe-exec.c
5) called 'PrintQueryResults' from within 'PQexecFinish', last statement in the while loop
when I gmake the project I receive the following error:
"
../../src/interfaces/libpq/libpq.so: undefined reference to `PrintQueryResults'
collect2: ld returned 1 exit status
gmake[5]: *** [test1] Error 1
gmake[5]: Leaving directory `/home/grads/imehegaz/postgresql-8.2.3-b/src/interfaces/ecpg/test/connect'
gmake[4]: *** [all] Error 2
gmake[4]: Leaving directory `/home/grads/imehegaz/postgresql-8.2.3-b/src/interfaces/ecpg/test'
gmake[3]: *** [all] Error 2
gmake[3]: Leaving directory `/home/grads/imehegaz/postgresql-8.2.3-b/src/interfaces/ecpg'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/home/grads/imehegaz/postgresql-8.2.3-b/src/interfaces'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/home/grads/imehegaz/postgresql-8.2.3-b/src'
gmake: *** [all] Error 2


"

I wonder what does this error mean and how to solve it?Notice: in the backend, I also invoked functions in different files and directories and I didn't face this problem.

Regards
Islam Hegazy

Browse pgsql-interfaces by date

  From Date Subject
Next Message Islam Hegazy 2007-04-22 02:10:45 modifying in the libpg files
Previous Message John DeSoi 2007-04-19 02:03:12 Re: Implementing Frontend/Backend Protocol