Thread: php5 and Pg 8.0.3 install from sources - problem

php5 and Pg 8.0.3 install from sources - problem

From
michael@softasap.net
Date:
Environment I am running is as follows:
OS: Fedora Core 3
php5.0.4
Pg 8.0.3


Here is what I did:

1) uninstalled postgres rpm
2) unistalled php rpm

3) compiled from source postgre (more recent version)
4) compiled from source php (more recent version)
5) installed zend optimizer

During step 4, namely when I did make install of php I have got an error of
libpq.so.4 was not found. I copied then it to /usr/lib and make worked. But
when I tried to start apache it has failed to start complaining on libpq.so.4
something like "can't open shared segment: Permission Denied.".

Did anyone experience such problem?

P.S. Postgres itself installed from source just without any problem or warning.
But looks like a problem with its lib libpq.so

Thank you for any help!


Re: php5 and Pg 8.0.3 install from sources - problem

From
Volkan YAZICI
Date:
Hi,

On 5/18/05, michael@softasap.net <michael@softasap.net> wrote:
> Environment I am running is as follows:
> OS: Fedora Core 3
> php5.0.4
> Pg 8.0.3
>
> 3) compiled from source postgre (more recent version)
> 4) compiled from source php (more recent version)
> 5) installed zend optimizer
>
> During step 4, namely when I did make install of php I have got an error of
> libpq.so.4 was not found. I copied then it to /usr/lib and make worked. But
> when I tried to start apache it has failed to start complaining on libpq.so.4
> something like "can't open shared segment: Permission Denied.".

In PostgreSQL 8.0.3 release libpq major version number is changed and
this caused libpq dependent programs to break. (Further information:
http://pgfoundry.org/pipermail/pgsqlrpms-hackers/2005-April/000197.html)

If I'd return to your situation, it's not so feasible to just move the
libpq.so.4 shared file as a solution. AFAIC, you should re-compile PHP
using correct --with-pgsql directory.

  Just pass the --prefix parameter of PostgreSQL ./configure script to
  PHP's ./configure script. For instance:
  postgresql-8.0.3# export PGSQL_PREFIX=/usr
  postgresql-8.0.3# ./configure --prefix=$PGSQL_PREFIX ...
  ...
  php-5.0.4# ./configure ... --with-pgsql=$PGSQL_PREFIX

Hope this helps.
Regards.