bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

glibc problem pinned down


From: Marcus Brinkmann
Subject: glibc problem pinned down
Date: Tue, 17 Jul 2001 04:28:30 +0200
User-agent: Mutt/1.2i

Hi,

I have pinned down my (and Jeffs) recent problem with glibc.
However, I don't know enough about it to suggest what is actually
wrong or needs fixing.

The problem is in elf/dl-load.c (open_verify), the very last check
before returning:  the check for the ABI note in the executable.

The following check is true, causing ENOENT to be returned (this
error value is hard coded there).

if (abi_note[4] != __ABI_TAG_OS
    || (_dl_osversion && _dl_osversion < osversion))
  {
    close_and_out:
    __close (fd);
    __set_errno (ENOENT);
    fd = -1;
  }

I run the following command:

LD_LIBRARY_PATH=/mnt/build:/mnt/build/mach:/mnt/build/hurd:/lib elf/ld.so 
/hurd/hello

I inserted a _dl_debug_printf after the if above, which gave me these values
at the time of comparison:

abi_note[4] == 0
__ABI_TAG_OS == 1
_dl_osversion == 0
osversion == 0x2001e

Note that abi_note[4] != __ABI_TAG_OS.

I don't know what this ABI note section is, and how it is set.
Maybe it is wrong because I cross compile the Hurd?

Thanks,
Marcus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]