php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #74125 PHP 7.1.2 compilation and libcurl error
Submitted: 2017-02-18 20:41 UTC Modified: 2017-08-25 15:07 UTC
Votes:15
Avg. Score:3.9 ± 0.9
Reproduced:14 of 14 (100.0%)
Same Version:6 (42.9%)
Same OS:9 (64.3%)
From: krazitchek at hotmail dot com Assigned: remi
Status: Closed Package: Compile Failure
PHP Version: 7.1.2 OS: Debian 9 stretch 64bits
Private report: No CVE-ID:
 [2017-02-18 20:41 UTC] krazitchek at hotmail dot com
Description:
------------
I tried to compile 7.1.2 as usually but this time ./configure fail with these error:

    checking for cURL in default path... not found
    configure: error: Please reinstall the libcurl distribution - easy.h should be in /include/curl/

I'm on Debian Stretch (9) 64 bits.

With 'locate easy.h' i found libcurl4-openssl-dev is installed in /usr/include/x86_64-linux-gnu/curl when ./configure expect it in/include/curl/`

libcurl4-openssl-dev on debian Jessie install curl in /usr/include/curl/ when Stretch install curl in /usr/include/x86_64-linux-gnu/curl.

With the last PHP version i compiled (7.1.1), i had no problems, but this time it failed.

To compile:
./buildconf --force && ./configure --prefix=/usr/local/php --with-config-file-path=/etc/php/lib --enable-bcmath --with-bz2 --with-zlib --enable-zip --enable-calendar --enable-exif --enable-ftp --with-gettext --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-xpm-dir --enable-mbstring --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --enable-intl --enable-soap --with-readline --with-curl --with-mcrypt --with-xsl --enable-sockets

curl and libcurl4-openssl-dev packages are installed via apt-get.

I tried with --with-curl=/usr/include/x86_64-linux-gnu/curl/ but it doesn't work.

I'm not sure but i think something change in libcurl4-openssl-dev package in debian 8 jessie (packages.debian.org/fr/jessie/amd64/libcurl4-openssl-dev/…) and debian 9 stretch (packages.debian.org/fr/stretch/amd64/libcurl4-openssl-dev/…‌​). We can see on those two urls that path is not the same for the same package. Jessie version match requirement (/usr/include/curl/easy.h) while stretch version don't match requirement (/usr/include/x86_64-linux-gnu/curl/easy.h)


Patches

Add a Patch

Pull Requests

Pull requests:

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2017-02-19 08:04 UTC] krazitchek at hotmail dot com
libcurl4-openssl-dev for debian jessie:
https://packages.debian.org/fr/jessie/amd64/libcurl4-openssl-dev/filelist

libcurl4-openssl-dev for debian stretch:
https://packages.debian.org/fr/stretch/amd64/libcurl4-openssl-dev/filelist
 [2017-02-21 13:58 UTC] deadraid at yandex dot ru
sudo ln -s  /usr/include/x86_64-linux-gnu/curl  /usr/include/curl
 [2017-08-25 15:07 UTC] remi@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: remi
 [2017-08-25 15:07 UTC] remi@php.net
While this is obviously a bug in debian "curl-config not giving correct build options", this have been fixed in 7.0+ by

http://git.php.net/?p=php-src.git;a=commit;h=3fd7d819b8ea164bdf255cddcd0a1b1d156f4a3b

But IMHO using dpkg command is not acceptable, so a better fix have been applied in 7.2

http://git.php.net/?p=php-src.git;a=commit;h=b8c6ce91b24d314fe9f9996a17942b63ecec249b
 
PHP Copyright © 2001-2017 The PHP Group
All rights reserved.
Last updated: Tue Aug 29 15:01:52 2017 UTC