Gentoo Archives: gentoo-user

From: Maarten <gentoo@××××××××.org>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Problem building statically linked e2fsprogs
Date: Wed, 24 Sep 2008 19:43:05
Message-Id: 48DA9759.5020404@ultratux.org
1 Hi List,
2
3 I'm in a bit of trouble. A server or ours has a broken e2fsck because it
4 is linked to a library version that doesn't exist anymore. Yes, I should
5 have fixed this before-- but alas, I obviously didn't... :-(
6
7 Tonight, the server had a hard crash and the only way to get it up again
8 (no IT people at the location) was by talking someone through a process
9 wherein I replaced e2fsck by /bin/true so it would not complain at boot
10 (where it would remain in an inaccesible state, with a panic shell).
11 So it is up and running again. All /seems/ fine, for now at least...
12
13 However, we must certainly assume the disk is in a dirty state so I
14 really do not want to do more than the bare minimum to it. So emerging
15 isn't a real good idea. Even then, I still tried. But it seems that
16 -despite the state of the bug(s) about e2fsprogs which are in
17 {resolved,fixed} state I cannot get e2fsprogs to compile AT ALL.
18 I've tried 10 different versions, etc., etc. To no avail. (Error below)
19 I believe looking at google and forum entries e2fsprogs on gentoo has a
20 *terrible* track record of late by the way, but maybe that is just me.
21
22 Things get more complicated fast, because this server has a CHOST i386
23 therefore -unless someone tells me otherwise- I cannot update glibc, and
24 practise has taught us to not upgrade packages/libs left and right
25 because you invariably end up, at revdep-rebuild time, with dependencies
26 which are unsolvable "unless...". And it is the "unless" (meaning emerge
27 -e world) which is unacceptable for this (or any production-) server...
28
29 It crashes on the "../../lib/libuuid.so: undefined reference to
30 `___tls_get_addr'". The two bugzilla entries that apply basically tell
31 me to rebuild from scratch, which I cannot do for reasons outlined
32 above. (http://bugs.gentoo.org/204102 & http://bugs.gentoo.org/232743)
33
34
35 -in short-
36 So as to avoid any further messing with the box I opted for building a
37 statically linked e2fsck binary on another box and copy it. However, I'm
38 having no luck with that. I can build static binaries fine for other
39 packages, but e2fsprogs refuses to build a static version.
40 (It builds, but the result is still dynamically linked)
41
42 Can anyone help with this ? Does this package not support building
43 static ? The USE flag is there for a reason, no? Did I take the wrong
44 approach here ? What is up with this [damn] package ?!?
45
46
47 # Grep works fine...
48 maarten@thoughtpad ~ $ ldd /bin/grep
49 linux-gate.so.1 => (0xffffe000)
50 libc.so.6 => /lib/libc.so.6 (0xb7e42000)
51 /lib/ld-linux.so.2 (0xb7f96000)
52
53 thoughtpad ~ # USE="static" emerge -v grep
54 [snip]
55
56 maarten@thoughtpad ~ $ ldd /bin/grep
57 not a dynamic executable
58
59 # But e2fsprogs doesn't...
60
61 maarten@thoughtpad ~ $ ldd /sbin/e2fsck
62 linux-gate.so.1 => (0xffffe000)
63 libext2fs.so.2 => /lib/libext2fs.so.2 (0xb7ea1000)
64 libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7e9d000)
65 libblkid.so.1 => /lib/libblkid.so.1 (0xb7e93000)
66 libuuid.so.1 => /lib/libuuid.so.1 (0xb7e8e000)
67 libe2p.so.2 => /lib/libe2p.so.2 (0xb7e87000)
68 libc.so.6 => /lib/libc.so.6 (0xb7d55000)
69 /lib/ld-linux.so.2 (0xb7ee8000)
70
71 thoughtpad ~ # USE="static" emerge -v e2fsprogs
72 [ebuild R ] sys-fs/e2fsprogs-1.40.9 USE="nls static*" 0 kB
73 [snip]
74 Enabling ELF shared libraries
75 [snip]
76 checking whether linker accepts -static... yes
77 [snip]
78 >>> Completed installing e2fsprogs-1.40.9 into
79 /var/tmp/portage/sys-fs/e2fsprogs-1.40.9/image/
80
81 # After that, no change, however...
82 maarten@thoughtpad ~ $ ldd /sbin/e2fsck
83 linux-gate.so.1 => (0xffffe000)
84 libext2fs.so.2 => /lib/libext2fs.so.2 (0xb7f7f000)
85 libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7f7b000)
86 libblkid.so.1 => /lib/libblkid.so.1 (0xb7f71000)
87 libuuid.so.1 => /lib/libuuid.so.1 (0xb7f6c000)
88 libe2p.so.2 => /lib/libe2p.so.2 (0xb7f65000)
89 libc.so.6 => /lib/libc.so.6 (0xb7e33000)
90 /lib/ld-linux.so.2 (0xb7fc6000)
91
92 maarten@thoughtpad ~ $ ls -la /sbin/e2fsck
93 -rwxr-xr-x 1 root root 159896 Sep 24 21:17 /sbin/e2fsck
94
95 maarten@thoughtpad ~ $ file /sbin/e2fsck
96 /sbin/e2fsck: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
97 for GNU/Linux 2.6.9, dynamically linked (uses shared libs), stripped
98
99
100 Thanks in advance for any insights...
101 Maarten

Replies

Subject Author
Re: [gentoo-user] Problem building statically linked e2fsprogs Albert Hopkins <marduk@×××××××××××.org>
Re: [gentoo-user] Problem building statically linked e2fsprogs Daniel Pielmeier <daniel.pielmeier@××××××××××.com>
Re: [gentoo-user] Problem building statically linked e2fsprogs Erik Hahn <erik_hahn@×××.de>
Re: [gentoo-user] Problem building statically linked e2fsprogs Michal 'vorner' Vaner <vorner@×××.cz>