On 2018-10-10 02:34 +0000, Ling, Darcy (NSB - CN/Qingdao) wrote: > 1. When I install a RPM package, it always reports > "libstdc++.so.6(GLIBCXX_3.4.21)(64bit) is needed by". > # rpm -ivh cnet-c-0.1.0-18.9.x86_64.rpm > error: Failed dependencies: > libstdc++.so.6(GLIBCXX_3.4.21)(64bit) is needed by cnet-c- > 0.1.0-18.9.x86_64 > > 2. Based on the search, I use following commands to check the > dynamic libstdc++.so installation. > The version to GLIBCXX_3.4.22 has been installed and the > libstdc++.so.6 points to libstdc++.so.6.0.22. > /usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.22 > > Any suggestions how I should do to solve the dependency issue? And > whether I need to downgrade the GLIBCXX_3.4.22 to GLIBCXX_3.4.21? I don't think so. libstdc++.so.6.0.22 provides symbols with version GLIBCXX_3.4.21. The GLIBCXX_*.*.* stuff ("versioned symbol") is mean to solve this "dependency hell" problem. I'm not familiar with rpm. But I can guess that libstdc++.so.6.0.22 is not installed by rpm and an old libstdc++.so version is still registered in the rpm database. What would `rpm -q libstdc++` output? -- Xi Ruoyao <xry111@xxxxxxxxxxxxxxxx> School of Aerospace Science and Technology, Xidian University