This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Error of featureCounts : /lib64/libc.so.6: version `GLIBC_2.14' not found (required by featureCounts)

Hey everyone.

When I ran featureCounts from sam file made by hisat2, I got error like below.

featureCounts: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by featureCounts)

I searched this error, and I thought my GLIBC version may be old. So, I checked by "ldd --version"

ldd (GNU libc) 2.17

Copyright (C) 2012 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

It looks like my GLIBC version is newer than required version. However, I downloaded and compiled subread-1.6.5 which is newest version software that includes featureCounts.

Does anyone know how to solve this problem ? How users of featureCounts cope with this ?

rna-seq software error next-gen

If you compiled a program on your machine and didn't have a major system upgrade afterwards, you would not get that error message. I am assuming this is not the problem, but it may be a good idea to recompile if you have done the compiling some time ago.

Another possibility is that you are not running the program you compiled, but rather a different version installed by you or someone else. Type:

which featureCounts

and that will give you the location from which the system runs the program. If that is different from the location of your compiled version, you may need to delete and overwrite the old version, or run your latest version with full path (/some/location/featureCounts).

There are precompiled binaries for the tool available at SF and it is also available on conda as part of subread. No need to bother with compilation.

Thank you for your answering. I compiled on my enviroment, but computation should be run on different environment, i.e. I used supercomputer as university. But, I will try compile one more time.

1 answer

I suppose if you type the following you will see older versions of GLIBC than 2.14

strings /lib64/libc.so.6 | grep GLIBC

Probably ldd --version reads another version in another path. So, if you type the above you can locate other paths for libc.so.6

sudo find / -name libc.so.6

Then rerun the first command using the new paths and see if you get newer versions of GLIBC

strings /new/path/of/libc.so.6 | grep GLIBC

If you find the latest version then create symbolic link to the new libc.so.6 or copy and replace the old libc.so.6 to /lib64/

But you have to be careful, deleting libc without a replacement or mistyping in symbolic link can cause serious problems to GUI, like not be able to open windows, apps, terminal etc.

If you need sudo to find it I doubt it is accessable to non-root users.

we have no idea in what kind of pc or server scheme4193 works?

Maybe he is working on his personal computer or in a server that he has admin rights or even know the sudo pass

IMHO if you need sudo to run any common bioinformatics tool you're massively doing things wrong.

find command is not a bioinformatics tool

Of course if he has admin rights there is no need to use it.

Precompiled binaries for the tool is a temporary solution applied to this tool. For sure in the future he will have to deal with the same error for other tools that use these libraries.

So, for me an "informatics" solution is more appropriate in this case

Thank you both. I feel sorry for not specifying my environment. Maybe, my environment is the center of this problem. Now, I am using supercomputer, So, I wrote command with shell script in .sh file and ran by using "qsub" command. So, though my environment has latest version of GLIBC, it may not be in the computing environment.

So, I cannot use sudo command and don't have admin rights. Do you have any idea in this situation ??

Also, I will post question with my environment information from next post. Thank you.

Log in to answer this question.