Yum does not resolve dependencies after a rpm -ivh installation - dependency-management

I use AWS EC2 instances.
I wanted to setup a package versioned at 5.4.0 but the latest that yum search all --enablerepo epel offered was 5.0.0.
I hence did wget and configure && make && make install on v5.4.0 which was available on the web.
Since we do a lot of instance ups and downs, this solution was too time consuming (the compile time) to become a viable solution on deployment.
I then built an RPM from the tar.bz2 versioned at 5.4.0. To ensure libraries and dependencies are no different between the environments, I ran rpmbuild on the same instance as our deployment AMI.
After having had built and deployed the RPM on a test server, I tried installing gearmand to the following result-
[ec2-user#ip-10-0-0-62 ~]$ sudo yum install --enablerepo=epel gearmand
Loaded plugins: priorities, update-motd, upgrade-helper
565 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package gearmand.x86_64 0:1.1.8-2.el6 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libpq.so.5()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libgearman.so.8()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libevent-1.4.so.2()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libboost_system.so.5()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libboost_program_options-mt.so.5()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Running transaction check
---> Package compat-boost-program-options.x86_64 0:1.41.0-11.10.amzn1 will be installed
---> Package compat-boost-system.x86_64 0:1.41.0-11.10.amzn1 will be installed
---> Package compat-libevent.x86_64 0:1.4.13-4.10.amzn1 will be installed
---> Package gearmand.x86_64 0:1.1.8-2.el6 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: gearmand-1.1.8-2.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: gearmand-1.1.8-2.el6.x86_64
---> Package libgearman.x86_64 0:1.1.8-2.el6 will be installed
---> Package postgresql9-libs.x86_64 0:9.2.5-1.37.amzn1 will be installed
--> Finished Dependency Resolution
Error: Package: gearmand-1.1.8-2.el6.x86_64 (epel)
Requires: libmysqlclient.so.16(libmysqlclient_16)(64bit)
Error: Package: gearmand-1.1.8-2.el6.x86_64 (epel)
Requires: libmysqlclient.so.16()(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
This makes me suspect that the RPM installation is in some sense 'freezing and blocking' the libraries it depends upon. I feel this way, because while building the RPM, the package expected higher library versions than those available on amazon or epel repos. Some examples-
+-------------+-------------------+----------------+
| name | amazon version | library wants |
+-------------+-------------------+----------------+
| glibc | 2.12 | 2.16 |
| perl | 5.10 | 5.18 |
| python | 2.6.9 | 2.7 |
+-------------+-------------------+----------------+
Am I doing something wrong here, do I need to change something in the source/spec before building the RPM? Because this looks like just the tip of the iceberg.

Change rpm-spec file where you can edit the required dependencies version

Related

Amazon Linux dependency error on yum update

When running:
sudo yum update
I get:
Loaded plugins: amzn_workspaces_filter_updates, halt_os_update_check, priorities, update-motd
remi-php74 | 3.0 kB 00:00:00
18186 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package python-s3transfer.noarch 0:0.1.13-1.0.1.el7 will be obsoleting
---> Package python2-s3transfer.noarch 0:0.3.3-1.amzn2.0.1 will be obsoleted
--> Processing Dependency: python2-s3transfer for package: awscli-1.18.147-1.amzn2.0.1.noarch
--> Processing Dependency: python2-s3transfer >= 0.3.0 for package: python2-boto3-1.15.6-1.amzn2.0.1.noarch
--> Finished Dependency Resolution
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
I tried "rpm -Va --nofiles --nodigest", but doesn't change anything (yum update throws the same response).
If I try:
sudo yum update --skip-broken
I get:
Loaded plugins: amzn_workspaces_filter_updates, halt_os_update_check, priorities, update-motd
amzn2-core | 3.7 kB 00:00:00
firefox | 2.9 kB 00:00:00
workspaces-internal-dependencies | 2.2 kB 00:00:00
18186 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package python-s3transfer.noarch 0:0.1.13-1.0.1.el7 will be obsoleting
---> Package python2-s3transfer.noarch 0:0.3.3-1.amzn2.0.1 will be obsoleted
--> Processing Dependency: python2-s3transfer for package: awscli-1.18.147-1.amzn2.0.1.noarch
--> Processing Dependency: python2-s3transfer >= 0.3.0 for package: python2-boto3-1.15.6-1.amzn2.0.1.noarch
Packages skipped because of dependency problems:
python-s3transfer-0.1.13-1.0.1.el7.noarch from ol7_latest
I am not a Linux expert, and I do not know how to get past this error. What should I remove or add and how?

Error installing dotnet "Requires openssl-libs"

I'm try install dotnet by command for OS Amazon Linux 2 AMI
sudo yum install -y dotnet-sdk-2.1.4
And it show for me:
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main | 2.1 kB 00:00:00
amzn-updates | 2.5 kB 00:00:00
Resolving Dependencies
--> Running transaction check
---> Package dotnet-sdk-2.1.4.x86_64 0:2.1.4-1 will be installed
--> Processing Dependency: dotnet-runtime-2.0.5 >= 2.0.5 for package: dotnet-sdk-2.1.4-2.1.4-1.x86_64
--> Processing Dependency: aspnetcore-store-2.0.5 >= 2.0.5 for package: dotnet-sdk-2.1.4-2.1.4-1.x86_64
--> Running transaction check
---> Package aspnetcore-store-2.0.5.x86_64 0:2.0.5-1 will be installed
--> Processing Dependency: aspnetcore-store-2.0.3 >= 2.0.3 for package: aspnetcore-store-2.0.5-2.0.5-1.x86_64
---> Package dotnet-runtime-2.0.5.x86_64 0:2.0.5-1 will be installed
--> Processing Dependency: openssl-libs for package: dotnet-runtime-2.0.5-2.0.5-1.x86_64
--> Processing Dependency: dotnet-hostfxr-2.0.5 for package: dotnet-runtime-2.0.5-2.0.5-1.x86_64
--> Running transaction check
---> Package aspnetcore-store-2.0.3.x86_64 0:2.0.3-1 will be installed
--> Processing Dependency: aspnetcore-store-2.0.0 >= 2.0.0 for package: aspnetcore-store-2.0.3-2.0.3-1.x86_64
---> Package dotnet-hostfxr-2.0.5.x86_64 0:2.0.5-1 will be installed
--> Processing Dependency: dotnet-host >= 2.0.5 for package: dotnet-hostfxr-2.0.5-2.0.5-1.x86_64
---> Package dotnet-runtime-2.0.5.x86_64 0:2.0.5-1 will be installed
--> Processing Dependency: openssl-libs for package: dotnet-runtime-2.0.5-2.0.5-1.x86_64
--> Running transaction check
---> Package aspnetcore-store-2.0.0.x86_64 0:2.0.0-1 will be installed
---> Package dotnet-host.x86_64 0:2.1.0-1 will be installed
---> Package dotnet-runtime-2.0.5.x86_64 0:2.0.5-1 will be installed
--> Processing Dependency: openssl-libs for package: dotnet-runtime-2.0.5-2.0.5-1.x86_64
--> Finished Dependency Resolution
Error: Package: dotnet-runtime-2.0.5-2.0.5-1.x86_64 (packages-microsoft-com-prod)
Requires: openssl-libs
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
I enter
sudo yum list
And i can't found openssl-libs in result.
Also i installed openssl-devel, but result is same.
Update:
I compared the used repositories to another server. There it was installed successfully.
First server repository repository: !amzn-main/latest, os version: "Amazon Linux AMI 2018.03"
Second server repository (with installed dotnet) repository: !amzn2-core/2017.12/x86_64, os version: "Amazon Linux 2 (2017.12) LTS Release Candidate"
I think yum cannot get openssl-libs from repository. How can I install this package?
I ran into a similar issue while installing Powershell. I managed to fake the installation of the latest CentOS package like this:
sudo rpm -ivh https://rpmfind.net/linux/centos/7.9.2009/updates/x86_64/Packages/openssl-libs-1.0.2k-21.el7_9.x86_64.rpm --justdb --force
The --justdb --force added it to the RPM database but without touching the filesystem.

Facing library dependencies while installing krb5-server on RHEL 6.9

I am facing issues in " yum install krb5-server" on RHEL 6.9 .This I am doing to install Kerberos on MapR 5.2 cluster. Issue mentioned below:
[root#master ~]# yum install krb5-server
Loaded plugins: product-id, refresh-packagekit, search-disabled-repos, security, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package krb5-server.x86_64 0:1.10.3-57.el6 will be installed
--> Processing Dependency: krb5-libs = 1.10.3-57.el6 for package: krb5-server-1.10.3-57.el6.x86_64
--> Running transaction check
---> Package krb5-libs.i686 0:1.10.3-57.el6 will be installed
--> Processing Dependency: libselinux.so.1 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libresolv.so.2(GLIBC_2.2) for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libresolv.so.2 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libm.so.6 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libkeyutils.so.1(KEYUTILS_0.3) for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libkeyutils.so.1 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libdl.so.2(GLIBC_2.1) for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libdl.so.2(GLIBC_2.0) for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libdl.so.2 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libcom_err.so.2 for package: krb5-libs-1.10.3-57.el6.i686
--> Processing Dependency: libc.so.6(GLIBC_2.9) for package: krb5-libs-1.10.3-57.el6.i686
--> Running transaction check
---> Package glibc.i686 0:2.12-1.192.el6 will be installed
--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.12-1.192.el6.i686
--> Processing Dependency: libfreebl3.so for package: glibc-2.12-1.192.el6.i686
---> Package keyutils-libs.i686 0:1.4-5.el6 will be installed
---> Package libcom_err.i686 0:1.41.12-22.el6 will be installed
---> Package libselinux.i686 0:2.0.94-7.el6 will be installed
--> Running transaction check
---> Package nss-softokn-freebl.i686 0:3.14.3-23.3.el6_8 will be installed
--> Finished Dependency Resolution
Error: Multilib version problems found. This often means that the root
cause is something else and multilib version checking is just
pointing out that there is a problem. Eg.:
1. You have an upgrade for krb5-libs which is missing some
dependency that another package requires. Yum is trying to
solve this by installing an older version of krb5-libs of the
different architecture. If you exclude the bad architecture
yum will tell you what the root cause is (which package
requires what). You can try redoing the upgrade with
--exclude krb5-libs.otherarch ... this should give you an error
message showing the root cause of the problem.
2. You have multiple architectures of krb5-libs installed, but
yum can only see an upgrade for one of those arcitectures.
If you don't want/need both architectures anymore then you
can remove the one with the missing update and everything
will work.
3. You have duplicate versions of krb5-libs installed already.
You can use "yum check" to get yum show these errors.
...you can also use --setopt=protected_multilib=false to remove
this checking, however this is almost never the correct thing to
do as something else is very likely to go wrong (often causing
much more problems).
Protected multilib versions: krb5-libs-1.10.3-57.el6.i686 != krb5-libs-1.10.3-65.el6.x86_64
Error: Protected multilib versions: libcom_err-1.41.12-22.el6.i686 != libcom_err-1.41.12-23.el6.x86_64
[root#master ~]#
Yum errors like this happen if the system is installed from newer installation media and then subscribed to software channels which only provide older package versions. I usually see it when people install the betas and then do not enable the beta channels after installation (which is a manual step).
The hint is in this line:
Protected multilib versions: krb5-libs-1.10.3-57.el6.i686 != krb5-libs-1.10.3-65.el6.x86_64
Error: Protected multilib versions: libcom_err-1.41.12-22.el6.i686 != libcom_err-1.41.12-23.el6.x86_64
Yum tries to install version 1.10.3-57.el6, while 1.10.3-65 is already installed. (You can ignore the i686/x86_64 difference, yum goes really wrong while trying to figure out what to install here.)
Red Hat Enterprise Linux 6.9 has been released, so it is not the usual beta problem. You need to check the channel subscriptions with yum repolist -v and then use subscription-manager repos --disable=… --enable=… to fix the channel configuration.
If you use Satellite, the policy applied to your system might feed it the wrong version of the operating system. In this case, you may have to make the changes in the Satellite infrastructure.
If, for some reason, you need an EUS version of Red Hat Enterprise Linux (older than 6.9), you should just set up a new system with that. Downgrades can be rather difficult.
How about removing yum cache, and then the retry it.
# yum clean all
or
# rm -rf /var/cache/yum
# yum update
# yum install krb5-server

while installing libpcap-devel on Fedora 21 dependencies error is Coming

While installing libpcap-devel on fedora 21 following error are coming :-
**yum install libpcap-devel**
Loaded plugins: langpacks
Resolving Dependencies
--> Running transaction check
---> Package libpcap-devel.x86_64 14:1.6.2-1.fc21 will be installed
--> Processing Dependency: libpcap = 14:1.6.2-1.fc21 for package: 14:libpcap-devel-1.6.2-1.fc21.x86_64
--> Running transaction check
---> Package libpcap.i686 14:1.6.2-1.fc21 will be installed
--> Processing Dependency: libc.so.6(GLIBC_2.11) for package: 14:libpcap-1.6.2-1.fc21.i686
--> Running transaction check
---> Package glibc.i686 0:2.20-5.fc21 will be installed
--> Processing Dependency: glibc-common = 2.20-5.fc21 for package: glibc-2.20-5.fc21.i686
--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.20-5.fc21.i686
--> Processing Dependency: libfreebl3.so for package: glibc-2.20-5.fc21.i686
--> Running transaction check
---> Package glibc.i686 0:2.20-5.fc21 will be installed
--> Processing Dependency: glibc-common = 2.20-5.fc21 for package: glibc-2.20-5.fc21.i686
---> Package nss-softokn-freebl.i686 0:3.17.2-1.fc21 will be installed
--> Finished Dependency Resolution
Error: Package: glibc-2.20-5.fc21.i686 (fedora)
Requires: glibc-common = 2.20-5.fc21
Installed: glibc-common-2.20-8.fc21.x86_64 (installed)
glibc-common = 2.20-8.fc21
Available: glibc-common-2.20-5.fc21.x86_64 (fedora)
glibc-common = 2.20-5.fc21
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
The kernel i am using-
uname -r
4.1.13-100.fc21.x86_64
I cannot erase glibc-common-2.20-8.fc21.x86_64 , since it is with kernel package, can someone help me in this?

I am not able to install google chrome in my oracle enterprise linux

I have created a google.repo file and stored the file in yum.repos.d, the contents of google.repo are :
[google-chrome]
name=google-chrome – 64-bit
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
I executed the below command in shell as a root user :
Executed :
yum install google-chrome-stable
Output :
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package google-chrome-stable.x86_64 0:23.0.1271.64-165188 set to be updated
--> Processing Dependency: lsb >= 4.0 for package: google-chrome-stable
--> Processing Dependency: libc.so.6(GLIBC_2.11)(64bit) for package: google-chrome-stable
--> Processing Dependency: libcurl.so.4()(64bit) for package: google-chrome-stable
--> Finished Dependency Resolution
google-chrome-stable-23.0.1271.64-165188.x86_64 from google-chrome has depsolving problems
--> Missing Dependency: libcurl.so.4()(64bit) is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
google-chrome-stable-23.0.1271.64-165188.x86_64 from google-chrome has depsolving problems
--> Missing Dependency: lsb >= 4.0 is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
google-chrome-stable-23.0.1271.64-165188.x86_64 from google-chrome has depsolving problems
--> Missing Dependency: libc.so.6(GLIBC_2.11)(64bit) is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
Error: Missing Dependency: libc.so.6(GLIBC_2.11)(64bit) is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
Error: Missing Dependency: libcurl.so.4()(64bit) is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
Error: Missing Dependency: lsb >= 4.0 is needed by package google-chrome-stable-23.0.1271.64-165188.x86_64 (google-chrome)
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
The program package-cleanup is found in the yum-utils package.
I can't find lsb package also, I found that the below packages are installed :
redhat-lsb.x86_64
redhat-lsb.i386
Please help me to install google chrome in oracle enterprise linux 5...
alright, it seems that OL 5 has older version of GLIBC and chrome will not work with that.
https://superuser.com/questions/393158/how-to-install-a-chrome-on-my-rhel-5-3-box
If you don't mind installing an earlier version of Google Chrome which does not requires latest libstdc++.so, read the following:
For example, for Oracle Linux 6.6 (64bit), google chrome version 35 or higher requires libstdc++.so.6(GLIBCXX_3.4.15). Go to http://orion.lcg.ufrj.br/RPMS/myrpms/google/ and download google-chrome-stable-27.0.1453.110-202711.x86_64.rpm. Run the following command
sudo yum install /path-to/google-chrome-stable-27.0.1453.110-202711.x86_64.rpm
FYI - To check what versions of libstdc++ your system has, do the following
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

Resources