Join the community today
Register Now

PHP-FPM PHP missing in new centminmod installs

Discussion in 'Install & Upgrades or Pre-Install Questions' started by SuperNOVA91, Mar 24, 2019.

  1. SuperNOVA91

    SuperNOVA91 New Member

    6
    1
    3
    Oct 22, 2018
    Ratings:
    +1
    Local Time:
    3:09 AM
    I've been trying to install CMM with PHP 7.3 for the past few hours but the PHP fails and everything else installs perfectly. I tried the same on a fresh CentOS 7 install with PHP 7.0 but same issue.

    After installation, I tried installation through centmin option 5 for PHP 7.3.3 and after half an hour the make process fails.

    Here are some of the errors I can see:
    make: *** [ext/phar/phar.php] Error 132
    make: *** Waiting for unfinished jobs....
    Error: 2, PHP make failed (123.09beta01.b115)

    I've tried this on 2 servers (clean install) but have the same error.
    Any ideas whats wrong?
     
  2. pamamolf

    pamamolf Premium Member Premium Member

    3,239
    305
    83
    May 31, 2014
    Ratings:
    +558
    Local Time:
    1:09 AM
    Nginx-1.13.x
    MariaDB 10.1.x
    Try to locate the log file from /root/centminlogs and attach it here so eva2000 can check more details...
     
  3. eva2000

    eva2000 Administrator Staff Member

    39,199
    8,654
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +13,307
    Local Time:
    8:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    You'll need to post on the forums with the following info
    • Server or VPS details ? XEN, KVM, OpenVZ, VMWare or dedicated server ? OS ? CentOS 6.9 or 7.4 ? 32bit or 64bit ?
    • What version of Centmin Mod ? .07 stable or 08 stable or .09 beta01 or another branch version ?
    • Was it fresh install or upgrade ?
    • Method of install ? Via centmin.sh menu option 1, Git install or curl one liner install as outlined at centminmod.com/download.html ?
    • How long ago did you install Centmin Mod ?
    • There's numerous code changes, bug fixes over time, so ensure you have latest Centmin Mod code installed by upgrading your Centmin Mod code as instructed below.

    Troubleshooting Initial Install



    To troubleshoot initial installation, you need to check the initial install log at /root/centminlogs and instructions under Sharing logs and errors heading for using Pastebin.com or Gists to share a sanitised version of the contents of the initial install log. You can see full details at How to troubleshoot Centmin Mod initial install issues

    Example for 123.09beta01 and newer list /root/centminlogs files in date ascending order and grep for installer_*
    Code (Text):
    ls -lahrt /root/centminlogs | grep installer_*
    

    example output returns install log at /root/centminlogs both a the full log and minimal log (smaller in size with some stuff filtered out)
    Code (Text):
    ls -lahrt /root/centminlogs | grep installer_*
    -rw-r--r-- 1 root root 4.3M Jul 12 09:06 installer_120718-083445.log
    -rw-r--r-- 1 root root 826K Jul 12 10:20 installer_120718-083445_minimal.log
    


    Example for 123.08stable list /root/centminlogs files in date ascending order and grep for install.log
    Code (Text):
    ls -lahrt /root/centminlogs | grep install.log
    

    example output returns install log at /root/centminlogs/centminmod_1.2.3-eva2000.09.001_111016-112321_install.log
    Code (Text):
    ls -lahrt /root/centminlogs | grep install.log
    -rw-r--r--  1 root root 2.2M Oct 11 01:40 centminmod_1.2.3-eva2000.09.001_111016-112321_install.log
    

    in SSH use cat to ouput contents of /root/centminlogs/centminmod_1.2.3-eva2000.09.001_111016-112321_install.log. Clear your SSH client window/buffer so only output is the contents of the file

    for 123.08stable
    Code (Text):
    cat /root/centminlogs/centminmod_1.2.3-eva2000.09.001_111016-112321_install.log
    

    for 123.09beta01 and newer
    Code (Text):
    cat /root/centminlogs/installer_120718-083445_minimal.log
    


    Then copy and paste into Pastebin.com or Gists entry. If your SSH window scroll buffer isn't that large to get the whole contents of the install log, you can download file manually and copy and paste contents. But makes sure it's sanitised version of the contents of the initial install log as outlined at How to troubleshoot Centmin Mod initial install issues
     
  4. SuperNOVA91

    SuperNOVA91 New Member

    6
    1
    3
    Oct 22, 2018
    Ratings:
    +1
    Local Time:
    3:09 AM
    I'll reply with the details as soon as I'm back on PC but actually I retried several more times and its only an issue with 7.3.x branch. I tried 7.3.3, 7.3.2, 7.3.1 n 7.3.0 and they all fail but 7.2 installs just fine.

    Anyway, I'll get the details soon.
     
  5. eva2000

    eva2000 Administrator Staff Member

    39,199
    8,654
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +13,307
    Local Time:
    8:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    who's the web host too ?
     
  6. SuperNOVA91

    SuperNOVA91 New Member

    6
    1
    3
    Oct 22, 2018
    Ratings:
    +1
    Local Time:
    3:09 AM
    Here is the complete log of another 123.09beta01 with PHP 7.3 on a freshly installed CentOS server and PHP fails again:
    https://paste.fedoraproject.org/paste/nP2VGMrzzcw2u3mKiJ4lNw/raw

    I tried this on 2 servers, Hetzner and LiteServer.nl and same results.

    PHP 7.2 installs just fine though which makes this very wierd! :confused:

    P.S. This problem seems to have started recently. I installed 123.09beta01 with PHP 7.3 on a Hetzner server about a month ago and everything went smooth.
     
  7. eva2000

    eva2000 Administrator Staff Member

    39,199
    8,654
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +13,307
    Local Time:
    8:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    problem is the web hosts KVM configuration it is using intel ivybridge cpu with avx supported by cpu but your web host isn't passing the avx cpu instruction flag from vps host node to the underlying guest kvm vps OS. PHP 7.3 uses avx instructions now if detected cpu supports it - it seems PHP is trying to compile PHP 7.3 with avx support but your kvm guest OS is NOT seeing the support

    so you get illegal instructions error when compiling PHP
    Code (Text):
    /bin/sh: line 1: 11827 Illegal instruction     ` if test -x "/svr-setup/php-7.3.3/fpm-build/sapi/cli/php"; then /svr-setup/php-7.3.3/build/shtool echo -n -- "/svr-setup/php-7.3.3/fpm-build/sapi/cli/php -n"; if test "x" != "x"; then /svr-setup/php-7.3.3/build/shtool echo -n -- " -d extension_dir=/svr-setup/php-7.3.3/fpm-build/modules"; for i in bz2 zlib phar; do if test -f "/svr-setup/php-7.3.3/fpm-build/modules/$i.la"; then . /svr-setup/php-7.3.3/fpm-build/modules/$i.la; /svr-setup/php-7.3.3/build/shtool echo -n -- " -d extension=$dlname"; fi; done; fi; else /svr-setup/php-7.3.3/build/shtool echo -n -- "/svr-setup/php-7.3.3/fpm-build/sapi/cli/php"; fi;` -n -d 'open_basedir=' -d 'output_buffering=0' -d 'memory_limit=-1' -d phar.readonly=0 -d 'safe_mode=0' /svr-setup/php-7.3.3/ext/phar/build_precommand.php > ext/phar/phar.php
    make: *** [ext/phar/phar.php] Error 132
    make: *** Waiting for unfinished jobs....
    

    what's output for command
    Code (Text):
    lscpu

    and
    Code (Text):
    lscpu | egrep 'avx|avx2'

    on working server and not working server for PHP 7.3, you should see avx in Flags listing for ivybridge cpus and for broadwell or newer cpus should see avx and avx2 flags

    example
    Code (Text):
    lscpu | egrep 'avx|avx2'
    Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm epb ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm ida arat pln pts spec_ctrl intel_stibp flush_l1d
    

    on sandybridge cpu output shows avx cpu instructions supported.

    If your ivybridge cpu doesn't show avx cpu instructions in KVM VPS, then your web host hasn't properly configured the KVM VPS to pass that cpu instruction from VPS host node to KVM VPS guest OS.

    With alot of VPS hosts, they have mix of cpus some supporting avx, some avx + avx2 and some very older than sandybridge with no avx support. But it's up to your web host to properly configure KVM VPS guest OS.
     
  8. SuperNOVA91

    SuperNOVA91 New Member

    6
    1
    3
    Oct 22, 2018
    Ratings:
    +1
    Local Time:
    3:09 AM
    OK thanks. That makes a lot of sense now.

    OK so with Hetzner, there was some other issue before. PHP 7.3 installation works fine now (it failed yesterday for some other reason maybe). Hetzner uses Skylake CPUs.

    On my other host, they do use IvyBridge without avx support so kvm is not set properly.

    Anyway we can manually force PHP 7.3 to compile without avx support in fresh 123.09beta01 install?
     
  9. eva2000

    eva2000 Administrator Staff Member

    39,199
    8,654
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +13,307
    Local Time:
    8:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    you can check which cpu is being used via
    Code (Text):
    lscpu

    Yeah looking into that right now so not available yet. Though really you'd want a cpu that supports avx to actually make use of avx for PHP 7.3 as that is where the performance boost. Using PHP 7.3 without avx with reduced performance, you might as well just use PHP 7.2 then for that misconfigured KVM VPS :)
     
    • Like Like x 1
  10. SuperNOVA91

    SuperNOVA91 New Member

    6
    1
    3
    Oct 22, 2018
    Ratings:
    +1
    Local Time:
    3:09 AM
    Yeah that makes sense.
    This isn't a production server so 7.2 it is. :p

    My main servers are on Hetzner using Skylake so 7.3 is fine there.
     
    • Like Like x 1
..