Sysup: Needed system RPMs were not installed issue

zahidhost

Registered
May 10, 2020
1
0
1
Pakistan
cPanel Access Level
Root Administrator
The system failed to update to the latest version of cPanel & WHM version 11.86 because it could not install basic requirements for cPanel & WHM. The specific failure was:
this issue occurred when I was moved from cloud Linux to again Centos 7.

Sysup: Needed system RPMs were not installed: gcc, gcc-c++, glibc-devel, glibc-static, kernel-headers, libtool


When i try to install every time these RPMs but no luck using below command


yum install gcc gcc-c++ glibc-devel glibc-static kernel-headers libtool


but below error shown to me every time


Error: Package: gcc-4.8.5-39.el7.x86_64 (base)
Requires: cpp = 4.8.5-39.el7
Installed: cpp-4.8.5-39.el7.cloudlinux.x86_64 (@cloudlinux-x86_64-server-7)
cpp = 4.8.2-16.el7.cloudlinux
cpp = 4.8.5-39.el7.cloudlinux
Available: cpp-4.8.5-39.el7.x86_64 (base)
cpp = 4.8.5-39.el7
cpp = 4.8.2-16.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest


please help me to fix this issue
 

GOT

Get Proactive!
PartnerNOC
Apr 8, 2003
1,740
300
363
Chesapeake, VA
cPanel Access Level
DataCenter Provider
MIght have to try a few different things. I would start with

rpm -qa|grep cpp

And see specifically what is installed and then its worth trying

rpm -w --no-deps cpp-xx-xx-xx-xx where the actual name is the package installed above, then

yum install cpp
 

cPanelLauren

Technical Support Community Manager
Staff member
Nov 14, 2017
13,304
1,249
313
Houston
If you're not on CloudLinux, you should not have CloudLinux packages on the server. The issue here:

Code:
Error: Package: gcc-4.8.5-39.el7.x86_64 (base)
Requires: cpp = 4.8.5-39.el7
Installed: cpp-4.8.5-39.el7.cloudlinux.x86_64 (@cloudlinux-x86_64-server-7)
You have cpp installed but it's the CloudLinux Package where the dependency for the GCC package is the non-cloudlinux version. To resolve this you have to remove cpp from CloudLinux and install the one from the base repository. The best way to do this would be using yum shell.

Code:
yum shell
remove cpp-4.8.5-39.el7.cloudlinux.x86_64
install cpp-4.8.5-39.el7.x86_64
run
exit
Commands that can be run in yum shell:
Code:
Usage: yum [options] COMMAND

List of Commands:

check          Check for problems in the rpmdb
check-update   Check for available package updates
clean          Remove cached data
deplist        List a package's dependencies
distribution-synchronization Synchronize installed packages to the latest available versions
downgrade      downgrade a package
erase          Remove a package or packages from your system
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         Display, or use, the groups information
help           Display a helpful usage message
history        Display, or use, the transaction history
info           Display details about a package or group of packages
install        Install a package or packages on your system
list           List a package or groups of packages
load-transaction load a saved transaction from filename
makecache      Generate the metadata cache
provides       Find what package provides the given value
reinstall      reinstall a package
repo-pkgs      Treat a repo. as a group of packages, so we can install/remove all of them
repolist       Display the configured software repositories
search         Search package details for the given string
shell          Run an interactive yum shell
swap           Simple way to swap packages, instead of using shell
update         Update a package or packages on your system
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        Update packages taking obsoletes into account
version        Display a version for the machine and/or available repos.


    Shell specific arguments:
      config - set config options
      repository (or repo) - enable/disable/list repositories
      transaction (or ts) - list, reset or run the transaction set
      run - run the transaction set
      exit or quit - exit the shell