cURL / Mailing Lists / curl-users / Single Mail

curl-users

Re: config error with PHP4

From: Daniel Stenberg <daniel_at_haxx.se>
Date: Mon, 29 Jan 2001 13:56:40 +0100 (MET)

On Mon, 29 Jan 2001, Steve Bassi wrote:

> Operating system: cobalt RAQ3 linux redhat
> PHP version: 4.0.4pl1
> Problem on *Install and Config
> Bug description: Cannot load /usr/lib/apache/libphp4.so into server:
>
> when configuring PHP4 with curl-7.6 (./configure --with-mysql
> --with-apxs --with-curl --enable-track-vars)
>
> when apache loads the libphp4.so, it detects that it also needs to load
> the libcurl.so object. But,it seems as if the full path to the libcurl.so
> file is not included in libphp and then, since libcurl is stored in a
> separate custom directory, it doesn't find it.

However much I want to, I don't see how this is a libcurl problem. Of course
the loader have to know where the libcurl is stored in order to get it.

> Setting up Web Service: Syntax error on line 32 of
> /etc/httpd/conf/httpd.conf: Cannot load /usr/lib/apache/libphp4.so into
> server: libcurl.so.0: cannot open shared object file: No such file or
> directory /usr/sbin/httpd
>
> However PHP configures fine with an old version of curl, namely libcurl
> 7.4.2

libcurl as of 7.5 and later is installed as libcurl.so.1 as the install
output extract below shows. I don't know why your server tries to load the
libcurl.so.0 library, which was the name of the previous interface that was
modified when 7.5 was released and that number got bumped.

You can probably solve this problem by making a (somewhat kludgy) symbolic
link like:

 % cd /usr/local/lib && ln -s libcurl.so.1.0.0 libcurl.so.0

Curl itself does not remove the libcurl.so.0, as that is left intact for
older programs to survive even when libcurl.so.1 is introduced and I can't
explain why your libcurl.so.0 isn't there anymore.

----- snip -----
make[2]: Entering directory `/home/dast/src/curl/lib'
/bin/sh ../mkinstalldirs /usr/local/lib
/bin/sh ../libtool --mode=install /usr/bin/install -c libcurl.la
/usr/local/lib/libcurl.la
/usr/bin/install -c .libs/libcurl.so.1.0.0 /usr/local/lib/libcurl.so.1.0.0
(cd /usr/local/lib && rm -f libcurl.so.1 && ln -s libcurl.so.1.0.0
libcurl.so.1)
(cd /usr/local/lib && rm -f libcurl.so && ln -s libcurl.so.1.0.0 libcurl.so)
/usr/bin/install -c .libs/libcurl.lai /usr/local/lib/libcurl.la
/usr/bin/install -c .libs/libcurl.a /usr/local/lib/libcurl.a
ranlib /usr/local/lib/libcurl.a
chmod 644 /usr/local/lib/libcurl.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib
---- end of snip ---

Can anyone else bring any more clues to this subject?

-- 
  Daniel Stenberg -- curl project maintainer -- http://curl.haxx.se/
Received on 2001-01-29