[Clfs-support] Inconsistency detected by ld.so

Hugo Villeneuve hugo at hugovil.com
Sat Dec 26 12:25:49 PST 2009


On Tue, 22 Dec 2009 11:56:38 -0500
Hugo Villeneuve <hugo at hugovil.com> wrote:

> Hi,
> I have built CLFS (Version SVN-20091027-x86_64-Pure64). When I reboot
> into my new CLFS system, the kernel load and runs fine, but gives
> the following error message when trying to start init:

Just as a precision, I'm building my new CLFS x86_64 system from a
LFS-6.0 system (32-bits). That is why I am not chrooting.

> Inconsistency detected by ld.so: dynamic-link.h: 204:
> elf_get_dynamic_info: Assertion 'info[15] == ((void *)0)' failed!
> 
> Any idea where the problem could be?

I have passed a number of days trying to find where I may have deviated
from the CLFS instructions, but I couldn't find nothing. Finally, I
have decided to remove the assertion directly in the eglibc-2.10.1
sources with this patch:

diff -Naur eglibc-2.10.1.orig/elf/dynamic-link.h
eglibc-2.10.1.new/elf/dynamic-link.h
--- eglibc-2.10.1.orig/elf/dynamic-link.h	2008-05-15
08:10:03.000000000 -0400 +++
eglibc-2.10.1.new/elf/dynamic-link.h	2009-12-25
16:33:35.000000000 -0500 @@ -201,7 +201,7 @@ || info
[DT_FLAGS]->d_un.d_val == DF_BIND_NOW); /* Flags must not be set for
ld.so.  */ assert (info[DT_RUNPATH] == NULL);
-  assert (info[DT_RPATH] == NULL);
+  /* assert (info[DT_RPATH] == NULL); */
 #else
   if (info[DT_FLAGS] != NULL)
     {

This have solved my problem, I am now able to boot and to login into my
temporary (chapter 8) CLFS system. I am no expert at glibc and dynamic
linking, and I'm not sure about the implications of this patch, altough
it is said in the elf.h source file that the DT_RPATH value is
obsolete...

Are there any other people out there that are booting their new
x86_64 system (not just chrooting) and experiencing the same problem?

Thank-you, Hugo V.



More information about the Clfs-support mailing list