Hi List,

I'm in a bit of trouble. A server or ours has a broken e2fsck because it is linked to a library version that doesn't exist anymore. Yes, I should have fixed this before-- but alas, I obviously didn't... :-(

Tonight, the server had a hard crash and the only way to get it up again (no IT people at the location) was by talking someone through a process wherein I replaced e2fsck by /bin/true so it would not complain at boot (where it would remain in an inaccesible state, with a panic shell).
So it is up and running again. All /seems/ fine, for now at least...

However, we must certainly assume the disk is in a dirty state so I really do not want to do more than the bare minimum to it. So emerging isn't a real good idea. Even then, I still tried. But it seems that -despite the state of the bug(s) about e2fsprogs which are in {resolved,fixed} state I cannot get e2fsprogs to compile AT ALL.
I've tried 10 different versions, etc., etc. To no avail. (Error below)
I believe looking at google and forum entries e2fsprogs on gentoo has a *terrible* track record of late by the way, but maybe that is just me.

Things get more complicated fast, because this server has a CHOST i386 therefore -unless someone tells me otherwise- I cannot update glibc, and practise has taught us to not upgrade packages/libs left and right because you invariably end up, at revdep-rebuild time, with dependencies which are unsolvable "unless...". And it is the "unless" (meaning emerge -e world) which is unacceptable for this (or any production-) server...

It crashes on the "../../lib/libuuid.so: undefined reference to `___tls_get_addr'". The two bugzilla entries that apply basically tell me to rebuild from scratch, which I cannot do for reasons outlined above. (http://bugs.gentoo.org/204102 & http://bugs.gentoo.org/232743)


-in short-
So as to avoid any further messing with the box I opted for building a statically linked e2fsck binary on another box and copy it. However, I'm having no luck with that. I can build static binaries fine for other packages, but e2fsprogs refuses to build a static version.
(It builds, but the result is still dynamically linked)

Can anyone help with this ? Does this package not support building static ? The USE flag is there for a reason, no? Did I take the wrong approach here ? What is up with this [damn] package ?!?


# Grep works fine...
[EMAIL PROTECTED] ~ $ ldd /bin/grep
        linux-gate.so.1 =>  (0xffffe000)
        libc.so.6 => /lib/libc.so.6 (0xb7e42000)
        /lib/ld-linux.so.2 (0xb7f96000)

thoughtpad ~ # USE="static" emerge -v grep
[snip]

[EMAIL PROTECTED] ~ $ ldd /bin/grep
        not a dynamic executable

# But e2fsprogs doesn't...

[EMAIL PROTECTED] ~ $ ldd /sbin/e2fsck
        linux-gate.so.1 =>  (0xffffe000)
        libext2fs.so.2 => /lib/libext2fs.so.2 (0xb7ea1000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7e9d000)
        libblkid.so.1 => /lib/libblkid.so.1 (0xb7e93000)
        libuuid.so.1 => /lib/libuuid.so.1 (0xb7e8e000)
        libe2p.so.2 => /lib/libe2p.so.2 (0xb7e87000)
        libc.so.6 => /lib/libc.so.6 (0xb7d55000)
        /lib/ld-linux.so.2 (0xb7ee8000)

thoughtpad ~ # USE="static" emerge -v e2fsprogs
[ebuild   R   ] sys-fs/e2fsprogs-1.40.9  USE="nls static*" 0 kB
[snip]
Enabling ELF shared libraries
[snip]
checking whether linker accepts -static... yes
[snip]
>>> Completed installing e2fsprogs-1.40.9 into /var/tmp/portage/sys-fs/e2fsprogs-1.40.9/image/

# After that, no change, however...
[EMAIL PROTECTED] ~ $ ldd /sbin/e2fsck
        linux-gate.so.1 =>  (0xffffe000)
        libext2fs.so.2 => /lib/libext2fs.so.2 (0xb7f7f000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7f7b000)
        libblkid.so.1 => /lib/libblkid.so.1 (0xb7f71000)
        libuuid.so.1 => /lib/libuuid.so.1 (0xb7f6c000)
        libe2p.so.2 => /lib/libe2p.so.2 (0xb7f65000)
        libc.so.6 => /lib/libc.so.6 (0xb7e33000)
        /lib/ld-linux.so.2 (0xb7fc6000)

[EMAIL PROTECTED] ~ $ ls -la  /sbin/e2fsck
-rwxr-xr-x 1 root root 159896 Sep 24 21:17 /sbin/e2fsck

[EMAIL PROTECTED] ~ $ file  /sbin/e2fsck
/sbin/e2fsck: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), stripped


Thanks in advance for any insights...
Maarten


Reply via email to