Skip site navigation (1) Skip section navigation (2)

Re: postgresql-8.0.0 beta5 & postgresql-7.4.6 can't compile successfully

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Luojia(dot)Chen(at)Sun(dot)COM
Cc: pgsql-bugs(at)postgresql(dot)org,Rajesh Ramchandani <Rajesh(dot)Ramchandani(at)Sun(dot)COM>
Subject: Re: postgresql-8.0.0 beta5 & postgresql-7.4.6 can't compile successfully
Date: 2004-12-23 20:32:30
Message-ID: 200412232032.iBNKWUf01787@candle.pha.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugs
Your compiler seems confused.  I have this at printtup.c:656:

        PrinttupAttrInfo *thisState = myState->myinfo + i;
        Datum       origattr = myState->values[i],
                    attr;
        bytea      *outputbytes;

I dont see any 'message' there, and am confused.  This is strange too:

> printtup.c:660: error: conflicting types for `pq_sendint'
> ../../../../src/include/libpq/pqformat.h:25: error: previous declaration

I see no mention of pg_sendint around line 660.  I think either your
compiler or preprocessor is buggy.  I would start commenting out lines
to see what is causing the failure.  The problem might be much higher in
the file.

---------------------------------------------------------------------------

Luojia Chen wrote:
> Hi, Bruce,
> 
> Good news is that I've found that the reason caused the compilation
> error messages about signal.h header file I reported to you before - I
> used GCC binary built on Solaris 9 x86,which has old header files to
> work with. The error got fixed after using the gcc binary for Solaris 10
> x86.
> 
> However, I got the new error messages when building Postgres 8.0 on
> Solaris 10 x86, the error is as the following:
> 
> ----------
> gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
> -Wmissing-declarations -I../../../../src/include   -c -o heaptuple.o
> heaptuple.c
> gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
> -Wmissing-declarations -I../../../../src/include   -c -o indextuple.o
> indextuple.c
> gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
> -Wmissing-declarations -I../../../../src/include   -c -o indexvalid.o
> indexvalid.c
> gcc -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
> -Wmissing-declarations -I../../../../src/include   -c -o printtup.o
> printtup.c
> printtup.c:656: error: parse error before "message"
> printtup.c:660: error: parse error before '&' token
> printtup.c:660: warning: type defaults to `int' in declaration of
> `pq_sendint'
> printtup.c:660: error: conflicting types for `pq_sendint'
> ../../../../src/include/libpq/pqformat.h:25: error: previous declaration
> of `pq_sendint'
> printtup.c:660: warning: data definition has no type or storage class
> printtup.c:672: warning: type defaults to `int' in declaration of `origattr'
> printtup.c:672: error: conflicting types for `origattr'
> printtup.c:668: error: previous declaration of `origattr'
> printtup.c:672:46: warning: null character(s) ignored
> printtup.c:672: confused by earlier errors, bailing out
> make[4]: *** [printtup.o] Error 1
> make[4]: Leaving directory
> `/tests/postgres/postgresql-7.4.6/src/backend/access/common'
> make[3]: *** [common-recursive] Error 2
> make[3]: Leaving directory
> `/tests/postgres/postgresql-7.4.6/src/backend/access'
> make[2]: *** [access-recursive] Error 2
> make[2]: Leaving directory `/tests/postgres/postgresql-7.4.6/src/backend'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/tests/postgres/postgresql-7.4.6/src'
> make: *** [all] Error 2
> ----------
> 
> Could you please let me know why the above error happened when running
> make, and how to solve it?
> 
> Thanks in advance for your help!
> 
> 
> Happy holiday,
> Jenny
> 
> Luojia Chen wrote:
> > Bruce Momjian wrote:
> > 
> >>Luojia Chen wrote:
> >>
> >>
> >>>Hi,
> >>>
> >>>Please see my inline reply.
> >>>
> >>>Bruce Momjian wrote:
> >>>
> >>>
> >>>>Would you tell use what is on this line?
> >>>>
> >>>>	/usr/include/sys/siginfo.h:259:
> >>>
> >>>ctid_t  __ctid;         /* contract ID          */
> >>
> >>
> >>OK, do a 'grep' and find out what /usr/include/* file contains the
> >>definiation of ctid_t.
> > 
> > 
> > Hi,Bruce,
> > 
> > The ctid_t was defined in /usr/include/sys/types.h
> > 
> >  typedef id_t    ctid_t;
> > 
> > 
> >>>>Seems you need an extra #include for that platform.  Try adding
> >>>>"#include <sys/types.h>" before the signal.h include and see if that
> >>>>helps.
> >>>
> >>>Adding the "#include <sys/types.h>" in the "/usr/include/sys/signal.h"
> >>>and "/usr/include/signal.h" doesn't help.
> >>
> >>
> >>OK.
> >>
> >>
> >>
> >>>>If your signal.h can't be used without a previous include being present
> >>>>it sounds like a bug in the operating system.
> >>>>
> >>>>My BSD system has for the signal manual page:
> >>>>
> >>>>    #include <signal.h>
> >>>>
> >>>>    void
> >>>>    *signal(sig, func());
> >>>>
> >>>>Does your signal manual page have another #include at the top?
> >>>
> >>>No, I didn't see any other #include at the top for the manual page
> >>>It shows as:
> >>>-----------
> >>>  #include <signal.h>
> >>>
> >>>    void (*signal (int sig, void (*disp)(int)))(int);
> >>
> >>
> >>OK, try a simple test.  Create a small C file that just includes
> >>signal.h and see if it compiles.  If it doesn't, that manual page is
> >>wrong, at the least.
> >>
> > 
> > 
> > A simple test.c as bellow as you suggested:
> > 
> > #include <signal.h>
> > #include <stdio.h>
> > 
> > int main()
> > {
> > printf("just a test");
> > return 0;
> > }
> > 
> > It compiled and run well without any error.
> > 
> > 
> > 
> > Thanks,
> > Jenny
> > 
> > 
> > 
> > 
> 
> 
> -- 
> 
>    Jenny Chen
>    Software Engineer
>    Market Development Engineering
>    v-mail:(510) 574-7149
>    SUN Microsystems
> 
> 
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

In response to

pgsql-bugs by date

Next:From: Scott StillwellDate: 2004-12-24 02:21:31
Subject: Re: [pgsql-www] BUG #1355: 8.0.0 rc2 installer fails
Previous:From: Luojia ChenDate: 2004-12-23 19:31:40
Subject: Re: postgresql-8.0.0 beta5 & postgresql-7.4.6 can't compile

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group