I am trying to build 32bit versions of two programs, and both shows the same error message

/usr/bin/ld: cannot find /media/34GB/Arquivos-de-Programas-Linux/Glibc-2.17-32bit/lib/libpthread.so.0

I certainly understand why it cannot find it, as I moved Glibc dir from the above path to:


However, I have no idea as to why ld is looking for libpthread in this wrong path. I have a bunch of symbolic links to Glibc lib files in /usr/lib32, but these are all correct, with the one responsible to libpthread pointing to the second path above. I executed ldconfig but to no avail

When I tried to build the first program, I thought some libraries that I was passing to configure had this old path hard linked on it, and so it was the cause.

However, when I run configure on the second program, I don't need to pass any library to it for the same error message to show up, so the cause is likely other.

So, I am open to any suggestion as to why is ld looking for libpthread in the old directory.

1 Answer 1


ld finds libraries through .so files (which are either symlinks or linker scripts). The error you’re getting suggests that it’s finding a libpthread.so which points to the old location of libpthread.so.0; you need to update that to point to the new location.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .