php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Doc Bug #79401 --with-openssl no longer accepts a directory
Submitted: 2020-03-20 21:13 UTC Modified: 2020-03-21 17:21 UTC
From: omero72 at hotmail dot de Assigned:
Status: Verified Package: OpenSSL related
PHP Version: 7.4.4 OS: macOS 10.10.5 (Yosemite)
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2020-03-20 21:13 UTC] omero72 at hotmail dot de
Description:
------------
./configure --prefix=$PHP7 --mandir=/usr/share/man --infodir=/usr/share/info --sysconfdir=/etc --with-config-file-path=/etc --with-zlib --with-zlib-dir=/usr --with-iconv --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-sockets --with-pdo-mysql --with-mysqli --with-openssl=/usr/local/openssl-1.1.1d --with-curl --enable-fpm

configures fine but, make fails with (truncated)

/Users/yose/Downloads/php-7.4.4/ext/openssl/openssl.c:1150:7: error: no member named 'global_config' in
      'struct php_x509_request'
        req->global_config = CONF_load(NULL, default_ssl_conf_filename, NULL);
        ~~~  ^
/Users/yose/Downloads/php-7.4.4/ext/openssl/openssl.c:1150:23: warning: 'CONF_load' is deprecated: first deprecated in
      OS X 10.7 [-Wdeprecated-declarations]
        req->global_config = CONF_load(NULL, default_ssl_conf_filename, NULL);
                             ^
/usr/include/openssl/conf.h:123:8: note: 'CONF_load' has been explicitly marked deprecated here
LHASH *CONF_load(LHASH *conf,const char *file,long *eline) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;
       ^
/Users/yose/Downloads/php-7.4.4/ext/openssl/openssl.c:1151:11: error: no member named 'global_config' in
      'struct php_x509_request'
        if (req->global_config == NULL) {
            ~~~  ^
...
fatal error: too many errors emitted, stopping now [-ferror-limit=]

Compiler is GCC-10.0


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2020-03-21 09:12 UTC] cmb@php.net
-Status: Open +Status: Feedback -Assigned To: +Assigned To: cmb
 [2020-03-21 09:12 UTC] cmb@php.net
As of PHP 7.4.0, --with-openssl no longer accepts a directory;
instead the location of the library is determined by
pkg-config[1], and this likely detected your system library,
instead of the custom one you're intending to use.

[1] <https://www.php.net/manual/en/migration74.other-changes.php#migration74.other-changes.pkg-config>
 [2020-03-21 15:37 UTC] omero72 at hotmail dot de
Ops! I didn't know it checked the openssl based solely on pkg-config. It turns out that my openssl related .pc files under /usr/local/lib/pkgconfig were incomplete. I have corrected the .pc file thereunder and php7 got built perfectly.
 [2020-03-21 17:21 UTC] cmb@php.net
-Summary: openssl.c:1182:24: error: no member 'req_config' (and 'global_config') +Summary: --with-openssl no longer accepts a directory -Status: Feedback +Status: Verified -Type: Bug +Type: Documentation Problem -Package: Compile Failure +Package: OpenSSL related -Assigned To: cmb +Assigned To:
 [2020-03-21 17:21 UTC] cmb@php.net
Great that you've got it working!  And no need to apologize; this
needs to be documented in the manual proper (not only in the
migration guide).
 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Wed Oct 21 08:01:23 2020 UTC