• Register
1 vote
1.3k views

Problem :

I want to run the newly compiled binary on some of the very oldish 32bits RedHat distribution.
This binary is compiled C (not C++) on the CentOS 32bits VM running the libc v2.12.

RedHat complains about the libc version as below:

“Error while loading shared libraries: requires glibc 2.5 or later dynamic linker”

Since the program is very simplistic, that’s why it is most likely not using anything new from the libc.

Is there any way to reduce the libc version requirement?

6 5 3
7,540 points

Please log in or register to answer this question.

1 Answer

0 votes

Solution :

I already had the same problem in the recent past while I was trying to compile the little tool which I wrote for the old machine for which I had not any compiler. I compiled it on the up to date machine, and that binary required at least GLIBC 2.14 in order to run it.

By making the dump of a binary with xxd, I found below lines :

....
5f64 736f 5f68 616e 646c 6500 6d65 6d63  _dso_handle.memc
7079 4040 474c 4942 435f 322e 3134 005f  py@@GLIBC_2.14._
....

So I simply replaced my memcpy calls in the code by the call to a home-made memcpy, and a dependency with a glibc 2.14 magically disappeared.

I hope the above solution helps you in resolving your issue.

9 7 4
38,600 points

Related questions

0 votes
1 answer 23 views
23 views
Problem : error adding symbols: dso missing from command line
asked Feb 24 Sabbir Hossain 14.6k points
0 votes
1 answer 1 view
1 view
Problem: I would understand this error message if I had not put the -lboost_system flag, but it is really here: undefined reference to `boost::system::system_category()' Do you have any idea what should I investigate to solve the problem ? (I use gcc 4.6.3)
asked Apr 11 ummesalma 29.2k points
0 votes
1 answer 3 views
3 views
Problem: Anyone solve this error while loading shared libraries: libstdc++.so.6
asked Apr 13 jamuna1 30.2k points
0 votes
1 answer 14 views
14 views
Problem: Help! I cannot find any solutions of the following problem:cmake can not determine linker language for target.
asked Apr 6 ashik 14.6k points
0 votes
1 answer 23 views
23 views
Problem: Program is part of the Xenomai test suite, cross-compiled from Linux PC into Linux+Xenomai ARM toolchain. # echo $LD_LIBRARY_PATH /lib # ls /lib ld-2.3.3.so libdl-2.3.3.so libpthread-0.10.so ld-linux.so.2 libdl.so.2 libpthread.so.0 libc-2.3.3.so libgcc_s.so ... file: No such file or directory Edit: OK I didn't notice the .1 at the end was part of the filename. What does that mean anyway?
asked May 2 jamuna1 30.2k points
0 votes
1 answer 4 views
4 views
Problem: Can somebody help me solving the following problem>error while loading shared libraries libz so 1?
asked Apr 4 ashik 14.6k points
0 votes
1 answer 2 views
2 views
Problem: Please someone let me know how to fix this following issue:error while loading shared libraries libz.so.1?
asked Apr 4 ashik 14.6k points
0 votes
1 answer 6 views
6 views
Problem: The function reads the file correctly and using printf I see that the coastline string did get read correctly as well. However, if I use the function, printf outputs gibberish. Why?
asked Mar 27 ummesalma 29.2k points
1 vote
2 answers 324 views
324 views
Problem : I am trying to learn the GCC. If I execute the below command then I always face the following error. make -j4 Error received: checking for suffix of object files... configure: error: in `/mnt/LFS/source/gcc-4.6.2/x86_64-lfs-linux-gnu/libgcc': configure: ... See `config.log' for more details. make[1]: *** [configure-target-libgcc] Error 1 Can somebody guide me in fixing above error?
asked Mar 27, 2020 morrisBson 3.2k points
0 votes
1 answer 2 views
2 views
Problem: I'd like to know which libraries are used by executables on my system. More specifically, I'd like to rank which libraries are used the most, along with the binaries that use them. How can I do this?
asked Apr 25 muktaa 34.6k points