(Q1) Finding debug builds on the Web (Q2) Building a local glibc
(Q1) As part of Fedora Bug 129527, which has to do with Ximian Evolution crashing due, it is strongly suspected, to a recent upgrade of glibc, a core developer asked the following:
Please, if you're seeing this bug, and haven't yet upgraded, can you
install these packages:
- evolution-debuginfo - glibc-debuginfo
- glibc-debuginfo-common
What are my options? I couldn't find ready-made RPMs for debugging glibc or evolution anywhere. So I assumed I would have to build them myself. Which leads us to Q2.
(Q2) I downloaded the source RPM for glibc2.3.3-27.1, ran the patches, configuration program (here's the command line: $dist/configure --enable-add-ons=linuxthreads --prefix=/mnt/share/glibc), and "make"-ed with CFLAGS="-O2 -g". I believe I followed instructions for the most common build in the INSTALL and FAQ notes.
The build and "make check" were successful, so I pointed my LD_LIBRARY_PATH to /mnt/share/glibc-build and successfully tested a small program that I intentionally crashed in strlen() to "debug" stack trace. After that, I ran
bash> gdb /usr/bin/evolution
(gdb) set env LD_LIBRARY_PATH=/mnt/share/glibc-build
(gdb) r
Starting program: /usr/bin/evolution
/usr/bin/evolution: relocation error: /lib/tls/libpthread.so.0: symbol errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
Program exited with code 0177.
So, Evolution doesn't seem to like my libc. There seem to be several possible solutions to my predicament:
1) Rebuild glibc-2.3.3-27.1 more carefully to recover the undefined GLIBC_PRIVATE variable. I think this is the answer, because I see this variable in a number of changelog files and Versions.def.
2) Build a supporting shared library (pthread, glibc-common, etc.)
3) change my shell environment - seems unlikely
I searched the web and found a lot about GLIBC_PRIVATE but nothing that struck me as germane to my particular situation