Welcome to Centmin Mod Community
Register Now

PHP-FPM August 11, 2019 - PHP 7.3 install bug due to missing python3.6 dependency

Discussion in 'Install & Upgrades or Pre-Install Questions' started by eva2000, Aug 11, 2019.

  1. eva2000

    eva2000 Administrator Staff Member

    53,567
    12,136
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,679
    Local Time:
    4:43 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    @Hxxx came across this bug and it seems php 7.3 default betainstaller73.sh does have a bug and fails to install php 7.3.

    I tested today at libzip install part of php install as php 7.3 by default enables argon2 and sodium password hashing algorithm support which requires newer libzip than CentOS 7 libzip provided via yum. So I install libzip via source compile but cmake3 is missing due to python36 EPEL yum package being missing recently.
    Code (Text):
    checking libzip... yes
    checking for the location of zlib... /usr
    checking for pkg-config... (cached) /bin/pkg-config
    checking for libzip... not found
    configure: error: Please reinstall the libzip distribution
    

    fails because libzip failed to install complaining that cmake3 is missing?
    Code (Text):
    libzip-1.5.2/src/
    libzip-1.5.2/src/CMakeLists.txt
    libzip-1.5.2/src/getopt.c
    libzip-1.5.2/src/getopt.h
    libzip-1.5.2/src/zipcmp.c
    libzip-1.5.2/src/zipmerge.c
    libzip-1.5.2/src/ziptool.c
    inc/libzip.inc: line 30: cmake3: command not found
    make: *** No targets specified and no makefile found.  Stop.
    make: *** No rule to make target `install'.  Stop.
    

    checking initial install log in /root/centminlogs directory and it seems cmake3 now has an increased dependency on python 3.6 in centos 7!
    Code (Text):
    grep -C5 -rin cmake3 /root/centminlogs/installer_110819-071611.log
    11354-buildconf: autoconf version 2.69 (ok)
    11355-rebuilding aclocal.m4
    11356-rebuilding configure
    11357-rebuilding main/php_config.h.in
    11358-
    11359:yum -y install cmake3
    11360-Loaded plugins: fastestmirror, priorities, versionlock
    11361-Loading mirror speeds from cached hostfile
    11362- * base: mirror.team-cymru.com
    11363- * centos-sclo-rh: mirror.team-cymru.com
    11364- * centos-sclo-sclo: mirror.team-cymru.com
    --
    11367- * rpmforge: repoforge.spinellicreations.com
    11368- * updates: mirror.team-cymru.com
    11369-315 packages excluded due to repository priority protections
    11370-Resolving Dependencies
    11371---> Running transaction check
    11372:---> Package cmake3.x86_64 0:3.13.5-1.el7 will be installed
    11373:--> Processing Dependency: cmake3-data = 3.13.5-1.el7 for package: cmake3-3.13.5-1.el7.x86_64
    11374:--> Processing Dependency: libjsoncpp.so.0()(64bit) for package: cmake3-3.13.5-1.el7.x86_64
    11375:--> Processing Dependency: librhash.so.0()(64bit) for package: cmake3-3.13.5-1.el7.x86_64
    11376:--> Processing Dependency: libuv.so.1()(64bit) for package: cmake3-3.13.5-1.el7.x86_64
    11377---> Running transaction check
    11378:---> Package cmake3-data.noarch 0:3.13.5-1.el7 will be installed
    11379:--> Processing Dependency: emacs-filesystem >= 24.3 for package: cmake3-data-3.13.5-1.el7.noarch
    11380:--> Processing Dependency: /usr/bin/python3.6 for package: cmake3-data-3.13.5-1.el7.noarch
    11381----> Package jsoncpp.x86_64 0:0.10.5-2.el7 will be installed
    11382----> Package libuv.x86_64 1:1.30.1-1.el7 will be installed
    11383----> Package rhash.x86_64 0:1.3.4-2.el7 will be installed
    11384---> Running transaction check
    11385:---> Package cmake3-data.noarch 0:3.13.5-1.el7 will be installed
    11386:--> Processing Dependency: /usr/bin/python3.6 for package: cmake3-data-3.13.5-1.el7.noarch
    11387----> Package emacs-filesystem.noarch 1:24.3-22.el7 will be installed
    11388:--> Processing Dependency: /usr/bin/python3.6 for package: cmake3-data-3.13.5-1.el7.noarch
    11389---> Finished Dependency Resolution
    11390:Error: Package: cmake3-data-3.13.5-1.el7.noarch (epel)
    11391-           Requires: /usr/bin/python3.6
    11392- You could try using --skip-broken to work around the problem
    11393- You could try running: rpm -Va --nofiles --nodigest
    11394-
    11395-/svr-setup /svr-setup/php-7.3.8/fpm-build
    --
    12148-libzip-1.5.2/src/getopt.c
    12149-libzip-1.5.2/src/getopt.h
    12150-libzip-1.5.2/src/zipcmp.c
    12151-libzip-1.5.2/src/zipmerge.c
    12152-libzip-1.5.2/src/ziptool.c
    12153:inc/libzip.inc: line 30: cmake3: command not found
    12154-make: *** No targets specified and no makefile found.  Stop.
    12155-make: *** No rule to make target `install'.  Stop.
    12156-/svr-setup/php-7.3.8/fpm-build
    12157-/svr-setup /svr-setup/php-7.3.8/fpm-build
    12158-wget -c4 https://github.com/jedisct1/libsodium/releases/download/1.0.17/libsodium-1.0.17.tar.gz --tries=3
    

    Problem is python3.6 which is provided in EPEL yum repo seems to be missing right now on fresh install so problem with EPEL
    Code (Text):
    yum -y install cmake3 cmake3-data -q
    Error: Package: cmake3-data-3.13.5-1.el7.noarch (epel)
               Requires: /usr/bin/python3.6
     You could try using --skip-broken to work around the problem
     You could try running: rpm -Va --nofiles --nodigest
    

    missing on this install
    Code (Text):
    yum list python36 -q
    Error: No matching Packages to list
    

    on working install shows exists
    Code (Text):
    yum list python36 -q | tr -s ''
    Installed Packages
    python36.x86_64                        3.6.8-1.el7                         @epel
    

    Looks like EPEL python36 bug is affecting other folks too https://stackoverflow.com/questions...rough-epel-release-package-python36-not-found


    Looks like the problem is EPEL folks prematurely retired python36 packages due to CentOS 7.7 coming soon with native python36 package support but CentOS 7.7 isn't out yet so CentOS 7.6 folks are left without python36 via EPEL until CentOS 7.7 comes https://www.spinics.net/linux/fedora/epel-devel/msg02982.html !

    https://bugzilla.redhat.com/show_bug.cgi?id=1739804

    Looks like EPEL folks are trying to undo their premature retiring of python36
    Looks like EPEL have unretired python36 yum package now https://bugzilla.redhat.com/show_bug.cgi?id=1739804#c15
     
    Last edited: Aug 12, 2019
  2. eva2000

    eva2000 Administrator Staff Member

    53,567
    12,136
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +18,679
    Local Time:
    4:43 PM
    Nginx 1.27.x
    MariaDB 10.x/11.4+
    Updated Centmin Mod 123.09beta01 with workaround fix outlined at https://community.centminmod.com/th...6-package-retirement-before-centos-7-7.18145/ based on discussed solutions at https://bugzilla.redhat.com/show_bug.cgi?id=1739804 by downloading the python36 EPEL yum rpm packages manually for install until EPEL reverses their premature removal of python36 packages. I downloaded the python36 EPEL yum packages for CentOS 7 (doesn't apply to CentOS 6) to local centminmod.com mirror so as to ensure it's available and installed via that centminmod.com local mirror.

    This should fix failed PHP 7.3 installs on Centmin Mod 123.09beta01 for initial install as well as centmin.sh menu option 5 PHP upgrades.
    • To update Centmin Mod 123.09beta01 code on your server, just run in SSH the command = cmupdate and then re-run centmin.sh menu option 5 to recompile PHP 7.3 specific versions i.e. 7.3.8 if you previously had PHP 7.3 fail.
    • If you have working PHP 7.3, then this bug doesn't apply as you installed at time when python36 EPEL yum package was available so only run cmupdate command but no need to recompile via centmin.sh menu option 5.