Join the community today
Become a Member

Beta Branch fix centos 6 PHP 7.3+ & 7.4+ compatibility in 123.09beta01

Discussion in 'Centmin Mod Github Commits' started by eva2000, Dec 25, 2019.

  1. eva2000

    eva2000 Administrator Staff Member

    54,601
    12,225
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,794
    Local Time:
    9:56 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    fix centos 6 PHP 7.3+ & 7.4+ compatibility in 123.09beta01

    - centos 6 didn't have devtoolset-8-gcc originally available but now it does. So add GCC 8 support for centos 6 for when PHP 7.3+ or 7.4+ is chosen
    - centos 6 sqlite 3.6 version is too low for PHP 7.4 required sqlite >3.7 version so install sqlite 3.7 package from Atomic YUM repo
    - centos 6 doesn't have appropriate pkg-config .pc files in it's yum devel packages for libjpeq and sasl libraries so need workarounds as PHP 7.4+ now uses pkg-config to look up dependencies
    - general centos 6 and devtoolset-8-gcc routine fixes and improvements
    - PHP 7.3+ seems to be working on centos 6
    - PHP 7.4+ seems to be working on centos 6

    Example CentOS 6.10 + PHP 7.4.1
    Code (Text):
    cat /etc/redhat-release 
    CentOS release 6.10 (Final)
    

    Code (Text):
    php-config
    Usage: /usr/local/bin/php-config [OPTION]
    Options:
      --prefix            [/usr/local]
      --includes          [-I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib]
      --ldflags           [ -L/usr/local/lib64]
      --libs              [-lcrypt  -lc-client  -ltidy -largon2 -lresolv -lcrypt -ltermcap -laspell -lpspell -lrt -lldap -llber -lstdc++ -lcrypt -lpam -lgmp -lbz2 -lrt -lm -ldl  -lrt -lxml2 -lkrb5 -lk5crypto -lgssapi_krb5 -lssl -lcrypto -lsqlite3 -lz -lcurl -lxml2 -lenchant -lgmodule-2.0 -lrt -lglib-2.0 -lssl -lcrypto -lz -lpng12 -lwebp -ljpeg -lXpm -lX11 -lfreetype -lkrb5 -lk5crypto -lgssapi_krb5 -lssl -lcrypto -licuio -licui18n -licuuc -licudata -lonig -lsqlite3 -ledit -lcurses -lxml2 -lnetsnmp -lxml2 -lsodium -lcrypt -largon2 -lxml2 -lxml2 -lxml2 -lxml2 -lxslt -lz -lm -lxml2 -lexslt -lxslt -lz -lm -lgcrypt -ldl -lgpg-error -lxml2 -lzip -lz -lssl -lcrypto -lcrypt ]
      --extension-dir     [/usr/local/lib/php/extensions/no-debug-non-zts-20190902]
      --include-dir       [/usr/local/include/php]
      --man-dir           [/usr/local/php/man]
      --php-binary        [/usr/local/bin/php]
      --php-sapis         [ cli embed fpm phpdbg cgi]
      --ini-path          [/usr/local/lib]
      --ini-dir           [/etc/centminmod/php.d]
      --configure-options [--enable-fpm --enable-opcache --enable-intl --enable-pcntl --with-mcrypt --with-snmp --enable-embed=shared --with-mhash --with-zlib --with-gettext --enable-exif --with-zip --with-libzip --with-bz2 --enable-soap --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-mysql-sock=/var/lib/mysql/mysql.sock --with-curl --enable-gd --with-xmlrpc --enable-bcmath --enable-calendar --enable-ftp --enable-gd-native-ttf --with-freetype --with-jpeg --with-png-dir=/usr --with-xpm --with-webp --with-t1lib=/usr --enable-shmop --with-pear --enable-mbstring --with-openssl --with-mysql=mysqlnd --with-libdir=lib64 --with-mysqli=mysqlnd --enable-pdo --with-pdo-sqlite --with-pdo-mysql=mysqlnd --enable-inline-optimization --with-imap --with-imap-ssl --with-kerberos --with-readline --with-libedit --with-gmp --with-pspell --with-tidy --with-enchant --with-fpm-user=nginx --with-fpm-group=nginx --disable-fileinfo --with-ldap --with-ldap-sasl --with-password-argon2=/usr/local --with-sodium=/usr/local --with-config-file-scan-dir=/etc/centminmod/php.d --with-xsl PKG_CONFIG_PATH=/opt/rh/devtoolset-8/root/usr/lib64/pkgconfig:/opt/rh/devtoolset-8/root/usr/lib64/pkgconfig KERBEROS_CFLAGS=-I/usr/include KERBEROS_LIBS=-L/usr/lib64 -lkrb5 -lk5crypto -lgssapi_krb5 JPEG_CFLAGS=-I/usr/include JPEG_LIBS=-L/usr/lib64 -ljpeg SASL_CFLAGS=-I/usr/include SASL_LIBS=-L/usr/lib64 LIBSODIUM_CFLAGS=-I/usr/local/include LIBSODIUM_LIBS=-L/usr/local/lib64 -lsodium LIBZIP_CFLAGS=-I/usr/local/include LIBZIP_LIBS=-L/usr/local/lib64 -lzip]
      --version           [7.4.1]
      --vernum            [70401]
    

    Code (Text):
    php -v
    PHP 7.4.1 (cli) (built: Dec 25 2019 02:24:26) ( NTS )
    Copyright (c) The PHP Group
    Zend Engine v3.4.0, Copyright (c) Zend Technologies
        with Zend OPcache v7.4.1, Copyright (c), by Zend Technologies
    



    Continue reading...

    123.09beta01 branch
     
  2. iaTa

    iaTa Member

    56
    9
    8
    Mar 26, 2018
    Ratings:
    +14
    Local Time:
    11:56 AM
    I upgraded from 7.3.12 to 7.4.1 on CentOS 6.10 and see the following module error:

    Code (Text):
    Starting php-fpm [28-Dec-2019 14:06:17] NOTICE: PHP message: PHP Warning:  Cannot load module 'redis' because required module 'igbinary' is not loaded in Unknown on line 0
     
  3. eva2000

    eva2000 Administrator Staff Member

    54,601
    12,225
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,794
    Local Time:
    9:56 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    run centmin.sh menu option 13 submenu option 2 to recompile redis php extension
     
  4. eva2000

    eva2000 Administrator Staff Member

    54,601
    12,225
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,794
    Local Time:
    9:56 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    run centmin.sh menu option 13 submenu option 2 to recompile redis php extension