Re: Things I learned about PG8 on AIX5.3 with XLC compiler

From: "Mohan, Ross" <RMohan(at)arbinet(dot)com>
To: <pgsql-general(at)postgresql(dot)org>
Subject: Re: Things I learned about PG8 on AIX5.3 with XLC compiler
Date: 2005-06-07 22:06:26
Message-ID: CC74E7E10A8A054798B6611BD1FEF4D30625DB66@vamail01.thexchange.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

:-)

LIBPATH=./usr/local/lib:/local/lib:/lib:/usr/lib:/usr/local/pgsql/lib:/home/app/postgresql-8.0.2/src/port

While I very much wish I had this little list before I started this, I'd
be loathe to consider it the end of the story. I'd say, maybe, "A Small Subset
of Helpful Things to Consider".

I can get it to compile under all optimization levels (an optimization level
is a bundle of little features...), but on almost all of them, the runtime
breaks ( e.g. at initdb -D with "...broken node..." errors)

I am going to try to optimize this thing, still. Several things are in the way:

1) Many (many!) uninitialized variables in code. Optimizers don't
do well with this.

2) Not clear (to me, a nonprogrammer) whether this is GNU C, ANSI C,
"Postgres" C, or what the overall coding protocol is. This would
be helpful in dis-assembling the pre-packaged compiler optimization
bundles, and just picking the compiler flags the code can withstand.

3) Compilation with profiling/debugging support appears, also, to break
the runtime. Makes it hard to...erm...debug.

Anyways, tallyho.

-- Ross

p.s. by the way, there is no more "Visual Age" compiler. It's been re-branded
as XL C/C++. :-)

-----Original Message-----
From: pgsql-general-owner(at)postgresql(dot)org [mailto:pgsql-general-owner(at)postgresql(dot)org] On Behalf Of Chris Browne
Sent: Tuesday, June 07, 2005 3:23 PM
To: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] Things I learned about PG8 on AIX5.3 with XLC compiler

RMohan(at)arbinet(dot)com ("Mohan, Ross") writes:
It would be worthwhile to try to formulate this as a patch to the FAQ_AIX file. Probably something like....

PostgreSQL 8 on AIX 5.3, compiled using VisualAge C
------------------------------------------------------

- Use only default optimization. Higher optimization levels have been
observed to lead to runtime problems, particularly with IPA

- Be sure to "export OBJECT_MODE=64" to compile in 64 bit mode

- Upgrading m4/autoconf helps with ./configure.

- m4 needs __STDC__ defined in order to avoid "va_list" compilation
errors.

- Setting LIBPATH (to what???) has proved useful
--
(format nil "~S(at)~S" "cbbrowne" "acm.org") http://www.ntlug.org/~cbbrowne/sap.html
Rules of the Evil Overlord #78. "I will not tell my Legions of Terror "And he must be taken alive!" The command will be: ``And try to take him alive if it is reasonably practical.''" <http://www.eviloverlord.com/>

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Wes 2005-06-07 22:11:43 To SPAM or not to SPAM...
Previous Message Douglas McNaught 2005-06-07 21:05:02 Re: pl/pgsql list