On 19 December 2013 05:31 Bruce Momjian wrote:
> On Wed, Dec 11, 2013 at 10:22:32AM +0000, Haribabu kommi wrote:
> > The make_absolute_path() function moving to port is changed in
> similar
> > way as Bruce Momjian approach. The psprintf is used to store the
> error
> > string which Occurred in the function. But psprintf is not used for
> > storing the absolute path As because it is giving problems in freeing
> the allocated memory in SelectConfigFiles.
> > Because the same memory is allocated in a different code branch from
> guc_malloc.
> >
> > After adding the make_absolute_path() function with psprintf stuff in
> > path.c file It is giving linking problem in compilation of ecpg. I am
> not able to find the problem.
> > So I added another file abspath.c in port which contains these two
> functions.
>
> What errors are you seeing?
If I move the make_absolute_path function from abspath.c to path.c,
I was getting following linking errors while compiling "ecpg".
../../../../src/port/libpgport.a(path.o): In function `make_absolute_path':
/home/hari/postgres/src/port/path.c:795: undefined reference to `psprintf'
/home/hari/postgres/src/port/path.c:809: undefined reference to `psprintf'
/home/hari/postgres/src/port/path.c:818: undefined reference to `psprintf'
/home/hari/postgres/src/port/path.c:830: undefined reference to `psprintf'
collect2: ld returned 1 exit status
make[4]: *** [ecpg] Error 1
make[3]: *** [all-preproc-recurse] Error 2
make[2]: *** [all-ecpg-recurse] Error 2
make[1]: *** [all-interfaces-recurse] Error 2
make: *** [all-src-recurse] Error 2
Regards,
Hari babu.