you might want to also check your architecture flags for your compiler.

i ran into this problem on a mac when I was compiling php and by default it 
tries to make a 32 bit and 64 bit binary, but pg was compiled as 64 bit only.  
I found that the php compile did not fail, but i was "missing" some functions 
just like you.  when I recompiled php only 64 bit everything was picked up.

I found that watching the configure output gave indication as to whether or not 
certain functions will be picked up:

PQescapeString
PQunescapeBytea
PQsetnonblocking
PQcmdTuples 
PQoidValue 
PQclientEncoding 
PQparameterStatus 
PQprotocolVersion 
PQtransactionStatus 
PQexecParams 
PQprepare 
PQexecPrepared 
PQresultErrorField 
PQsendQueryParams 
PQsendPrepare 
PQsendQueryPrepared 
PQputCopyData 
PQputCopyEnd 
PQgetCopyData 
PQfreemem 
PQsetErrorVerbosity 
PQftable 
PQescapeStringConn 
PQescapeByteaConn 
pg_encoding_to_char 

If you see these thigns set to NO even after PostgreSQL support says yes, then 
you know you wont be getting all the functions.


Ketema J. Harris
ket...@ketema.net
ket...@jabber.ketema.net (Jabber)
http://www.ketema.net
ket...@voip.ketema.net  - VoIP
407-459-4809            - main
603-413-2882            - fax

On May 20, 2010, at 12:26 PM, Ashley Sheridan wrote:

> On Thu, 2010-05-20 at 09:21 -0700, Giancarlo Boaron wrote:
>> 
>> Hi Jim.
>> 
>> I think it depends on each server configuration but I checked in my server 
>> and I don't have the 'pgsql.so' and 'psql.ini' files and neither the 'www' 
>> directory.
>> 
>> My Apache version is 2.2.15 and my root directory is 
>> /usr/local/apache2/htdocs.
>> 
>> Thank you.
>> 
>> 
>> --- Em qui, 20/5/10, Jim Lucas <li...@cmsws.com> escreveu:
>> 
>> > De: Jim Lucas <li...@cmsws.com>
>> > Assunto: Re: [PHP] Some undefined function errors
>> > Para: "Giancarlo Boaron" <gboa...@yahoo.com.br>
>> > Cc: pgsql-general@postgresql.org, php-gene...@lists.php.net, 
>> > pgsql-nov...@postgresql.org
>> > Data: Quinta-feira, 20 de Maio de 2010, 13:04
>> > Giancarlo Boaron wrote:
>> > > Hi all.
>> > > 
>> > > Recently, I wrote an email about the problem I was
>> > having with some Postgres functions that when those
>> > functions were called, I received the following error: "Call
>> > to undefined function <function_name>".
>> > > 
>> > > After some answers, I decided to rebuild a brand new
>> > linux virtual machine with Apache + PHP + Postgres, but I
>> > still get this annoying error messege with some functions
>> > like pg_prepare() and pg_escape_string().
>> > > 
>> > > I compiled Postgres with --without-readline option.
>> > > I compiled PHP with
>> > --with-apxs2=/usr/local/apache2/bin/apxs and
>> > --with-pgsql=/usr/local/pgsql/
>> > > 
>> > > And the compilation process has no errors.
>> > > 
>> > > What am I doing wrong? Do I have to change something
>> > in php_config.h file? If so, what do I have to change?
>> > > 
>> > > Thank you.
>> > > 
>> > > 
>> > >       
>> > > 
>> > 
>> > Depending on what version of apache you are running, you
>> > need to make sure that
>> > you are loading the pgsql.so file or have the psql.ini file
>> > in your
>> > /var/www/conf/php5/ directory.
>> > 
>> > This way it knows to load pg.
>> > 
>> > -- 
>> > Jim Lucas
>> > 
>> >    "Some men are born to greatness, some
>> > achieve greatness,
>> >        and some have greatness
>> > thrust upon them."
>> > 
>> > Twelfth Night, Act II, Scene V
>> >     by William Shakespeare
>> > 
>> 
>> 
>>       
>> 
> 
> I've generally found these sorts of things to be in /etc/php, /etc/php5 or 
> something similar. Within /etc you should see directories for both Apache and 
> PHP. If you have shell access to the machine, try calling a whereis command, 
> which might give you a better idea of where things are kept in your system.
> 
> Thanks,
> Ash
> http://www.ashleysheridan.co.uk
> 
> 

Reply via email to