diff --git a/utils/ldconfig.c b/utils/ldconfig.c
index e6b7881..c201e00 100644
--- a/utils/ldconfig.c
+++ b/utils/ldconfig.c
@@ -184,6 +184,9 @@ static char *readsoname(char *name, FILE *infile, int expected_type,
 		res = readsoname32(name, infile, expected_type, type);
 	else {
 		res = readsoname64(name, infile, expected_type, type);
+
+		// For 64-bit glibc compatibility
+		*type |= 0x300;
 #if 0
 		/* relies on multilib support which we dont have ... */
 		*type |= LIB_ELF64;
