php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #76369 Configure option --with-curl=PATH, the PATH will be ignored
Submitted: 2018-05-23 17:43 UTC Modified: -
From: labs at undef dot name Assigned:
Status: Open Package: Compile Failure
PHP Version: 7.1.17 OS: openSUSE 13.2 (x86_64)
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2018-05-23 17:43 UTC] labs at undef dot name
Description:
------------
Configure option --with-curl=PATH, the PATH will be ignored





The system default cURL package is 7.42.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caprice:/ # /usr/bin/curl -V
curl 7.42.1 (x86_64-suse-linux-gnu) libcurl/7.60.0 OpenSSL/1.0.2o zlib/1.2.8 nghttp2/1.32.0
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets Metalink


I have installed cURL 7.60.0 at /usr/local
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caprice:/ # /usr/local/bin/curl -V
curl 7.60.0 (x86_64-pc-linux-gnu) libcurl/7.60.0 OpenSSL/1.0.2o zlib/1.2.8 nghttp2/1.32.0
Release-Date: 2018-05-16
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy


If I configure the sources with "--with-curl=/usr/local" the 7.60.0 lib from "/usr/local" has been found:

caprice:/ # CFLAGS="-I/usr/local/include" \
LDFLAGS="-L/usr/local/lib64" \
./configure --with-curl=/usr/local
checking for cURL support... yes
checking for cURL 7.10.5 or greater... libcurl 7.60.0


...but after the build the 7.42.1 was used:


caprice:/ # /usr/local/php/7.1.17/bin/php --ri curl
[...]
cURL support => enabled
cURL Information => 7.42.1
[...]


I have copied "/usr/local/bin/curl-config" to "/usr/bin/curl-config" (which wasn't there before), but that doesn't changed something. The copy of "/usr/local/bin/curl-config" was using the correct pathes to 7.60.0.

Only after a complete remove of "/usr/bin/curl", "/usr/bin/lib64/libcurl.so.4" and "/usr/bin/lib64/libcurl.so.4.3.0" and a rebuild I was getting the wanted executable:

caprice:/ # /usr/local/php/7.1.17/bin/php --ri curl
[...]
cURL support => enabled
cURL Information => 7.60.0
[...]


I have just tested 7.0.30 and 5.6.36 and there is exact the same problem with "--with-curl=/usr/local" as described above (found 7.60.0 but uses 7.42.1 instead):

caprice:/ # /usr/local/php/7.0.30/bin/php --ri curl
[...]
cURL support => enabled
cURL Information => 7.42.1
[...]

caprice:/ # /usr/local/php/5.6.36/bin/php --ri curl
[...]
cURL support => enabled
cURL Information => 7.42.1
[...]



ldconfig lists "libcurl.so.*" in "/usr/local/lib64":

caprice:/ # /sbin/ldconfig -v
/usr/local/lib64:
	[...]
        libcurl.so.4 -> libcurl.so.4.5.0
	[...]



Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2018-05-30 01:56 UTC] peterkokot at gmail dot com
Hello, I've tested with same system - openSUSE 13.2 and it works ok. Issue is that there needs to be a reload of the environment variables - bash environment - something doesn't get refreshed when installing curl manually into the /usr/local. So a simple:

  exec bash

and it works ok.

How to recheck this issue:
1.) install curl from the openSUSE repository - version 7.42.1
2.) install curl manually from the official website - 7.60.0
3.) check the curl --version (7.42.1)
4.) exec bash
5.) check the curl --version again (7.60.0)
 
PHP Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Thu Apr 25 04:01:26 2019 UTC