Get the most out of your Centmin Mod LEMP stack
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

    58,908
    12,490
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +19,122
    Local Time:
    9:54 PM
    Nginx 1.31.x
    MariaDB 10.x/11.4+/12.3+
    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

    89
    16
    8
    Mar 26, 2018
    Ratings:
    +32
    Local Time:
    12:54 PM
    Nginx 1.31.x
    MariaDB 10.11.x
    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

    58,908
    12,490
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +19,122
    Local Time:
    9:54 PM
    Nginx 1.31.x
    MariaDB 10.x/11.4+/12.3+
    run centmin.sh menu option 13 submenu option 2 to recompile redis php extension
     
  4. eva2000

    eva2000 Administrator Staff Member

    58,908
    12,490
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +19,122
    Local Time:
    9:54 PM
    Nginx 1.31.x
    MariaDB 10.x/11.4+/12.3+
    run centmin.sh menu option 13 submenu option 2 to recompile redis php extension