Re: Compile/Link Error for Postgres 8.1.0 on Solaris 8

From: Alan Stange <stange(at)rentec(dot)com>
To: "Bhide, Rajan" <rbhide(at)starentnetworks(dot)com>
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: Compile/Link Error for Postgres 8.1.0 on Solaris 8
Date: 2005-12-08 18:23:39
Message-ID: 43987A2B.7020007@rentec.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Bhide, Rajan wrote:
> I tried to compile Postgres 8.1.0 from the source tar file with
> following options:
>
> ./configure --without-readline --enable-thread-safety CFLAGS=-xO4
> -D_REENTRANT -xipo -mt -lpthread
> CC=/export/home/uxapps/workshop/SUNWspro/bin/cc
>
> I am getting following error:
>
> gmake -C ../../src/timezone all
> gmake[3]: Entering directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src/timezone'
> /usr/ccs/bin/ld -r -o SUBSYS.o localtime.o strftime.o pgtz.o
> gmake -C ../../src/port all
> gmake[4]: Entering directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src/port'
> gmake[4]: Nothing to be done for `all'.
> gmake[4]: Leaving directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src/port'
> gmake[3]: Leaving directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src/timezone'
> /export/home/uxapps/workshop/SUNWspro/bin/cc -Xa -xO4 -D_REENTRANT
> -xipo -mt -lpthread -L../../src/port -Wl,-R/usr/local/pgsql/lib
> access/SUBSYS.o bootstrap/SUBSYS.o catalog/SUBSYS.o parser/SUBSYS.o
> commands/SUBSYS.o executor/SUBSYS.o lib/SUBSYS.o libpq/SUBSYS.o
> main/SUBSYS.o nodes/SUBSYS.o optimizer/SUBSYS.o port/SUBSYS.o
> postmaster/SUBSYS.o regex/SUBSYS.o rewrite/SUBSYS.o storage/SUBSYS.o
> tcop/SUBSYS.o utils/SUBSYS.o ../../src/timezone/SUBSYS.o
> ../../src/port/libpgport_srv.a -lz -lrt -lresolv -lgen -lsocket
> -lnsl -ldl -lm -o postgres
> *Undefined first referenced
> symbol in file
> __ipo_error_recompile_file(4_1) ../../src/timezone/SUBSYS.o
> ld: fatal: Symbol referencing errors. No output written to postgres
> *
> gmake[2]: *** [postgres] Error 1
> gmake[2]: Leaving directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src/backend'
> gmake[1]: *** [all] Error 2
> gmake[1]: Leaving directory
> `/home/rbhide/utilities/postgres-8.1/postgresql-8.1.0/src'
> gmake: *** [all] Error 2
>
> Could someone help on this?

Solaris 8?

Given that you've enabled -xipo, and the error is related to ipo, I'd
suggest dropping that option for now. What version of the Sun
compilers are you using here?

You might want to consider using gcc for compiler though. In a bit of
testing with the Studio 10 compilers against a recent gcc release, we
found that the gcc built postgres performed better (on our test
workload). This was mostly because the function MemoryContextSwitchTo
is inlined with gcc and not with the Sun compilers. I suppose you could
also try -xinline=%auto,MemoryContextSwitchTo, but then you need
-xcrossfile, which conflicts with -xipo....which leads me back to using gcc.

-- Alan

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Tom Lane 2005-12-08 19:30:13 Re: Compile/Link Error for Postgres 8.1.0 on Solaris 8
Previous Message Jaime Casanova 2005-12-08 16:44:05 Re: Location of index information