DNF Transaction Test fail

I am busy installing a lib via “dnf install libstdc++.i686”. But when I managed to complete the installation I get the transaction test fail message.

Will a simple update of Rocky and then retry of the install solve this problem?

Quite possible. Simple: sudo dnf up

You have libstdc++-8.4.1-1.el8.x86_64 installed and you try to install libstdc++-8.5.0-10.1.el8_6.i686.
That is a clear version mismatch; the x86_64 / i686 package pairs must have same version.

You really should run the dnf up more often; the 8.4.1-1.el8 is clearly older than Rocky 8.6 and even during 8.6 the libstdc++ has received an update.

PS: One can usually copy-paste text from terminal into forum post. One can use code tags ( the </> button) to format the text block. A text block is easier to read than bitmap images.

PS: One can usually copy-paste text from terminal into forum post.
One can use code tags ( the `</>` button) to format the text block. A text block is easier to read than bitmap images.

Thank you @jlehtone, I will use the code tags in future.

By the way, I managed to resolve the issue. I needed to install libstdc++ first. It seems this brought the up that I needed. Then install libcstdc++.i686. Then everything worked fine.

Well, when you dnf install foo, there are three possibilities:

  • No foo is installed. It is installed now
  • Older foo is installed. An update (remove old, install new) is done
  • Latest version foo is already installed. Nothing is done

However, you had very old version of libstdc++ in the system. There are quite likely many packages for which updates are available. Do not “cherry pick” what you update.

Do run dnf up to get every package up to date.

1 Like