Re: errcode redefinition - Mailing list pgsql-ports

From Andrew Vick
Subject Re: errcode redefinition
Date
Msg-id 4491DEEC.8080708@remote-print.com
Whole thread Raw
In response to Re: errcode redefinition  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: errcode redefinition  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-ports
Tom Lane wrote:
> Andrew Vick <avick@remote-print.com> writes:
>
>>Tom Lane wrote:
>>
>>>Why are these drivers trying to include elog.h?  That's a backend-only
>>>header.  If the reason is that they're including postgres.h, they should
>>>likely be including postgres_fe.h instead.
>
>
>>That is the case.  I tried switching it to postgres_fe.h, but then I
>>got errors about the pg_type structure not being defined.
>
>
> Where were those coming from?  I'm trying to burrow down to what they're
> really after that's forcing them to include headers they shouldn't be
> including ...
>

In Postgres, the errors were coming from pg_type.h.
In Qt. they were coming from src/sql/drivers/psql/qsql_psql.cpp.

I've glanced through the Qt source, and I don't see any places where they try to access the members of any Postgres
structures. I believe Qt is just wrapping the C interface to the Postgres libraries; maybe the problem is that this
versionof Qt (3.3.6) is too old for this version of Postgres (8.1 stable).  Perhaps the Postgres headers have changed
sincethe 8.0 release to cause this, and this release of Qt predates the change.  If it weren't for that problem with
errcode,I might be using an earlier version of Postgres. 

-Andrew


pgsql-ports by date:

Previous
From: Tom Lane
Date:
Subject: Re: errcode redefinition
Next
From: Tom Lane
Date:
Subject: Re: errcode redefinition