Donald Allen <donaldcal...@gmail.com> writes: >>> Do `ldd /usr/local/lib/gnucash/libgncmod-app-utils.so` and make sure that >>> libgnc-qof.so is in the list. >>> >> >> d...@octavian:~$ ldd /usr/local/lib/gnucash/libgncmod-app-utils.so | fgrep >> libgnc-qof >> libgnc-qof.so.1 => /usr/lib64/libgnc-qof.so.1 (0x00007ffbc0dcd000) >> d...@octavian:~$ find /usr/local -name libgnc-qof.so.1 -print >> /usr/local/lib/libgnc-qof.so.1 >> d...@octavian:~$ nm /usr/local/lib/libgnc-qof.so.1 | fgrep >> guid_g_hash_table_equal >> 0000000000014510 T guid_g_hash_table_equal >> d...@octavian:~$ >> > > I have a guess about what's going on here. I'm not sure what the output of > ldd is saying (the ld man page is amazingly unhelpful, a reminder of the bad
ldd is saying that /usr/local/lib/gnucash/libgncmod-app-utils would be loading libgnc-qof.so.1 from /usr/lib64/libgnc-qof.so.1. I.e., Your build is improperly interacting with a packaged version. This is one of many reasons I always recommend that people doing development use a "prefix build": ./configure --prefix=/opt/gnucash This will cause the build system to use library load-path encodings in the shared objects so that it will find your built libs first. > old 4.1BSD days on overloaded Vax 780s, where we joked "it was hard to > build, it ought to be hard to use"), but I'm guessing that it's saying that > the dynamic loading of libgnc-qof.so.1 is going to come from > /usr/lib64/libgnc-qof.so.1, which is there courtesy the Slackware 2.2.9 > package that is installed. If I'm right, that's the wrong version of that > library. I suspect that having 2.2.9 installed has confused things. Does > this sound plausible or am I tilting at windmills? If I'm right, then I > should remove the 2.2.9 package and re-link? You're right in your analysis, but somewhat incorrect in your conclusions. You do have two options: Remove 2.2.9, or rebuild into a prefix build. There was no reason that you needed to rebuild/relink into /usr/local. Actually, there's also a third option, set LD_LIBRARY_PATH when you run gnucash so that it looks into /usr/local/lib first. But I still maintain that prefix build is the best route. > /Don -derek -- Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory Member, MIT Student Information Processing Board (SIPB) URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH warl...@mit.edu PGP key available _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel