On Tue, Sep 13, 2011 at 6:27 PM, Myra Nelson <myra.nelson@xxxxxxxxxx> wrote: > On Fri, Sep 9, 2011 at 18:51, Gaetan Bisson <bisson@xxxxxxxxxxxxx> wrote: >> [2011-09-09 17:24:54 -0500] Myra Nelson: >>> I'm not complaining, bitching, griping, xxxxx >> >> I only asked for more information (in a tone I believe was neutral) to >> try and diagnose the issue your had; offending you was not my intention. >> >>> I'm just trying to pass on information in case >>> some one else ran into the same problem. >> >> Not so many people use [testing], so it is worth diagnosing and fixing >> your problem even if nobody else reports similar issues yet. >> >>> pacman -Uf libtool-2.4-5-x86_64.pkg.tar.xz libltdl-2.4-5-x86_64.pkg.tar.xz >> >> Is there a particular reason why you always use the --force option? >> >>> pacman -Qi imagemagick -- when I rebuilt imagemagick I built the >>> latest version from their website. >> >> When nobody flags packages out-of-date, they often stay out-of-date. >> >> -- >> Gaetan >> > > I'm not sure I have the answer but may be closer to figureing out a > solution. I built calibre-0.8.18-2 and everything worked fine. Last > night Imagemagick updated from [ libMagickWand.so.4 (libc6,x86-64) => > /usr/lib/libMagickWand.so.4 ] to [ libMagickWand.so.5 (libc6,x86-64) > => /usr/lib/libMagickWand.so.5 ] and calibre refuses to run again with > the error message "Runtime Error: Failed to load Imagemagick: > libMagickWand.so.4: cannot find shared object file: No such file or > directory". > > I had already changed my bash alias for pacman -Uf to pacman -U before > I built and installed calibre-0.8.18-2. I just went back and > reinstalled calibre with the same results. It seems that calibre needs > to be rebuilt with each update of it's shared libraries since it > searchs for libxxxxx.so.[0-9] instead of libxxx.so. I just rebuilt > calibre with with libMagickWand.so.5 installed and it runs fine. > > Is the a direct result of me building the package on my machine or is > it a result of something misconfigured in my build setup? If not, is > it in the internal build process of calibre? I'm missing something > here. That's the way it's supposed to work. When a soname (library version number) changes, everything that uses that library has to be rebuilt. Linking directly against the versioned filename is a safety feature, so that no program ever uses an incompatible library - after all, if the soname changed, there was a reason for it, some kind of API change. (That's also why it's bad to symlink library versions to each other.) For official packages, the devs and TUs do the rebuild for you. (I think that's what they spend most of their time on, really.) Since you built calibre yourself, you have to rebuild it.