I keep my system relatively "up to date". While trying to debug a GTK problem (completely unrelated to this bug), I went ahead and rebuilt GTK (sitting in my home directory). I tried to run vim to edit some code and, to my surprise, I got this: /home/duraid/garnome/lib/libgtk-x11-2.0.so.0: undefined symbol: __divsi3 It's since gone downhill from there. Almost anything that was compiled more recently (it must have been a glibc/gcc upgrade I performed some time ago and just didn't notice at the time, I normally work with the Intel C++ compiler every day) has this same error, not just GTK. OK, the first bit of good news. There's a fairly easy fix. If I create a file /etc/ld.so.preload , so that it contains the single entry: /usr/lib/gcc-lib/ia64-unknown-linux-gnu/3.3.2/libgcc_s.so.1 Then everything works again! The __divsi3 function (integer division support I am guessing, as IA64 doesn't have divide in hardware) is defined in this libgcc_s.so file. However, I've spent hours trying to repair my system so that this workaround isn't required. I am going to go out on a limb here, and _guess_ that this function should be defined in glibc, not libgcc. Either that, or GCC should be spitting this function into every binary it produces, not keeping it in a shared library. The problem, of course, is that binaries which GCC produces don't actually _attempt_ to dynamically link to libgcc_s. They just fail with this undefined symbol error. Please help! I'm not so concerned about *how* this happened as to how to get out if it a little more elegantly than by using the ld.so.preload hack (if only because that will probably fail in interesting ways if and when I upgrade to GCC 3.4, which has some BIG improvements on IA64). For the record, I have backed down my glibc (just slightly) to the latest stable versions on ia64: 2.3.2-r9 and 3.3.2-r2, but this doesn't seem to change a thing.) Reproducible: Always Steps to Reproduce: 1. 2. 3.
glibc should not provide that symbol, libgcc should also, our toolchain links that library in dynamically, so many of your binaries should have it linked in (see it in `ldd` output) the file you refer to: /home/duraid/garnome/lib/libgtk-x11-2.0.so.0 is that something you built yourself ? or is that a binary library you downloaded that was originally built for x86 ?
try rebuilding the packages that have suddenly broken