r23186 - gnucash/trunk - Bug 654196 - "make check" fails when built with --enable-dbi

Derek Atkins derek at ihtfp.com
Sat Sep 21 16:51:09 EDT 2013


Hi,

On Sat, September 21, 2013 3:43 pm, Herbert Thoma wrote:
> Am 21.09.2013 19:22, schrieb John Ralls:
>>
>> On Sep 21, 2013, at 9:36 AM, Geert Janssens <janssens-geert at telenet.be>
>> wrote:
>>
>>>
>>> Yet I do have all three libraries installed. If I remove the test, I
>>> can build and run GnuCash just fine using any of the backends. For
>>> reference, the so files are here:
>>> $ ls /usr/lib64/dbd/
>>> libdbdmysql.so    libdbdpgsql.so    libdbdsqlite3.so
>>>
>>
>> Ah. That's because Fedora has broken dlopen by creating the non-standard
>> /usr/lib64 and not modifying dlopen's search accordingly. See dlopen
>> (3).
>
> I just found out that openSUSE (at least 12.3) has the same broken,
> non-standard behavior.
>
>> You can either call configure with --with-dbd-dir=/usr/lib64/dbd, add
>> /usr/lib64/dbd to $LD_LIBRARY_PATH, or add it to /etc/ld.so.conf.d and
>> run ldconfig as root.
>
> OK, adding /usr/lib64/dbd to /etc/ld.so.conf.d and running ldconfig fixed
> the problem.
>
>> I'll add some detail about that to the "not found" message.
>
> I'd rather prefer that the test would just work, even with the broken,
> non-standard
> dlopen and /usr/lib64, since this seems to be quite common ...

The tests should call dlopen in the exact same way that it's called in
GnuCash.  DBI works in F19, doesn't it?  How is dlopen() called in the
sources?  The tests should call it the exact same way.

We should not require people to modify their ld.so.conf to get GnuCash to
compile.

>   Herbert.
>
>> Regards,
>> John Ralls

-derek

-- 
       Derek Atkins                 617-623-3745
       derek at ihtfp.com             www.ihtfp.com
       Computer and Internet Security Consultant



More information about the gnucash-devel mailing list