Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 366591 - dev-libs/cyrus-sasl-2.1.23-r3 fails on libpq-fe.h
Summary: dev-libs/cyrus-sasl-2.1.23-r3 fails on libpq-fe.h
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-09 13:16 UTC by Stefan de Konink
Modified: 2011-10-01 20:17 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan de Konink 2011-05-09 13:16:24 UTC
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../lib -I../sasldb -I../include -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D_BSD_S URCE -DLDAP_DEPRECATED -I/usr/include -fPIC -Wall -W -march=opteron -O2 -pipe -fno-strict-aliasing -MT sql.lo -MD -MP -MF .deps/sql.Tpo -c sql.c  -fPIC -DPIC -o .li s/sql.o
sql.c:192:22: error: libpq-fe.h: No such file or directory
sql.c: In function '_pgsql_open':

Does it miss a new dependency on PostgreSQL?
Comment 1 Rafał Mużyło 2011-05-09 14:37:43 UTC
What do you mean by 'new' ?
There is one already, controlled by postgres useflag.
Comment 2 Stefan de Konink 2011-05-09 14:48:51 UTC
(In reply to comment #1)
> What do you mean by 'new' ?
> There is one already, controlled by postgres useflag.

Which is enabled but doesn't pull the package that supplies the libpq-fe.h header it seams.
Comment 3 Rafał Mużyło 2011-05-09 15:30:38 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > What do you mean by 'new' ?
> > There is one already, controlled by postgres useflag.
> 
> Which is enabled but doesn't pull the package that supplies the libpq-fe.h
> header it seams.

Which I could have learned from your build log, had you attached it.

Check if that header is installed and 'eselect postgresql'.
Comment 4 Stefan de Konink 2011-05-09 15:40:24 UTC
eselect postgresql list
Available PostgreSQL Slots
  9.0 *                      server-9.0.4 base-9.0.4


From what I can see only /usr/include/postgresql-9.0/libpq/libpq-fs.h is available.
Comment 5 Aaron W. Swenson gentoo-dev 2011-05-09 16:22:18 UTC
(In reply to comment #4)
> eselect postgresql list
> Available PostgreSQL Slots
>   9.0 *                      server-9.0.4 base-9.0.4
> From what I can see only /usr/include/postgresql-9.0/libpq/libpq-fs.h is
> available.

Reemerge dev-db/postgresql-base. You may have been nicked by a change in the patch set.

Additionally, you should see 'libpq-fe.h' in /usr/include.
Comment 6 Stefan de Konink 2011-05-09 16:53:57 UTC
Didn't fix it, /usr/include/postgresql-9.0/libpq-fe.h is present.
Comment 7 Rafał Mużyło 2011-05-09 18:08:38 UTC
If /usr/include/postgresql-9.0/libpq-fe.h is present, but /usr/include/libpq-fe.h is not, that pobably means something has gone wrong during eselect, reselect it.
Comment 8 Stefan de Konink 2011-05-09 20:48:44 UTC
Problem was with eselect, regarding to the 'old' /usr/lib64/postgres and /usr/share/postgres
Comment 9 Andreas Sturmlechner gentoo-dev 2011-05-18 21:55:31 UTC
So, what to do? I'm stumbling over the same problem, still being with 8.4.8-r1 (9.0 not present).

Trying to reselect 8.4 results in:

Setting 8.4 as the default installation...
        Removing old links...!!! Error: The target '/usr/lib64/postgresql' still exists and could not be removed!
exiting
Comment 10 Stefan de Konink 2011-05-18 22:04:06 UTC
(In reply to comment #9)
> So, what to do? I'm stumbling over the same problem, still being with 8.4.8-r1
> (9.0 not present).
> 
> Trying to reselect 8.4 results in:
> 
> Setting 8.4 as the default installation...
>         Removing old links...!!! Error: The target '/usr/lib64/postgresql'
> still exists and could not be removed!
> exiting

Basically... you have to remove all directories that have a 'non version suffix' so that means removing /usr/lib64/postgresql /usr/share/postgresql etc. Then the reselection will work.
Comment 11 Andreas Sturmlechner gentoo-dev 2011-05-18 22:16:18 UTC
thx, solved! (so that was cruft from non-slotted times?)
Comment 12 John L. Poole 2011-10-01 20:17:12 UTC
I had the same problem and the resolution above worked for me. The installation of dev-libs/cyrus-sasl-2.1.23-r4 was failing with:

   sql.c:192:22: error: libpq-fe.h: No such file or directory

So, after reading this bug, I let the eselect identify the directories that had to be removed as follows, and just repeatedly removed what was being identified as a problem directory.  After completing the removals, I successfully built  dev-libs/cyrus-sasl-2.1.23-r4.

Here's my session showing the error and removals thereafter.

atom home # eselect postgresql list
Available PostgreSQL Slots
  9.0 *                      server-9.0.4-r2 base-9.0.5 docs-9.0.5
  9.1                        server-9.1.1 base-9.1.1 docs-9.1.1
atom home # eselect postgresql set 9.1
Setting 9.1 as the default installation...
        Removing old links...!!! Error: The target '/usr/lib/postgresql' still exists and could not be removed!
exiting
atom home # ls /usr/lib/postgresql
lib
atom home # rm -r /usr/lib/postgresql
atom home # eselect postgresql set 9.1
Setting 9.1 as the default installation...
        Removing old links...!!! Error: The target '/usr/share/postgresql' still exists and could not be removed!
exiting
atom home # rm -r /usr/share/postgresql
atom home # eselect postgresql set 9.1
Setting 9.1 as the default installation...
        Removing old links...done.
        Generating new links...done.
Setting 9.1 as default was successful!
atom home #