[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Checking failing dlopen when building 32bit software

From: alexandre schenberg
Subject: Re: Checking failing dlopen when building 32bit software
Date: Wed, 13 Oct 2021 21:09:53 -0300

   Thanks for the answers. There is some relevant info there, like
   ldconfig to ignore  symbolic links when scanning for libraries

   Well, I am already facing problems, possibly caused by this dl issue.

   When configuring wine, it tests for lib freetype, and it does not find
   it, being irrelevant that I am passing the relevant dir to it:

   "configure:10110: gcc -m32 -o conftest -g -O2
   / -L/media/34GB/Arquivos-de-Programas-Linux-32bit/xorg/X11-1.4.4/lib/
   -L/usr/lib32 -ldl conftest.c -lfreetype -lfreetype  >&5
   configure:10110: $? = 0
   configure:10122: result: not found
   configure:10221: error: FreeType 32-bit development files not found.
   Fonts will not be built.
   Use the --without-freetype option if you really want this"

   As I am passing its directory, it seems the likely reason is that
   Freetype was built without dlopen support ?

   When I call ldd on or any 32bit so library that I built
   them, ldd reports them as static.

   So what can I do? Perhaps to rebuild all of them, but before that, to
   copy all the relevant 32bit Glibc files to /usr/lib32, adding it to and then calling ldconfig prior to start to rebuild them?

   12.10.2021, 10:08, "Bob Friesenhahn" <>:

     On Mon, 11 Oct 2021, alexandre schenberg wrote:

        which made sense, as I had not yet made a symbolic link to libdl
        /usr/lib32. Then I just did it. Yet, this error message continued
        appear. What changed was this detection test: "checking for
     dlopen in
        -ldl..." that went from "no" to "yes", notwithstanding that
        for dlopen." continued to return no.
        Following suggestion on a message board, I was able to circumvent
        "skipping incompatible" error messages by adding a "-L/usr/lib32/
        -ldl" to the end of wine's configure parameter list.

     Adding -L/usr/lib32/ was likely the correct thing to do.

        So what was left from these messages on wine, mesa and alsa was
        "checking for dlopen... no". It did not stop me to build Alsa. I
        know about mesa and wine, since I still have many other tests to
        it before I can try to compile them. What I am afraid of, is that
        can make a software to refuse to run for not finding the 32bit
        that it requires (like wine not finding a .so alsa library)

     If the software does not use dlopen, then support for dynamic
     or dynamically loading libraries may be missing from it. Depending
     the software, this might severely diminish its functionality.

        Does this fear have any basis or am I looking for trouble without
        Can I safely ignore this libdl check?
        I also would like to understand the reason behind the "skipping
        incompatible" error messages. It seems it was looking for libdl
        /usr/lib64/ instead /usr/lib32. If so, why? I understand that
        /usr/lib32 did not exist when the system was installed, but
     looking for
        a 32bit library on a 64bit dir just does not compute.

     I suggest reading the documentation for 'ldconfig' and ''.
     The "skipping incompatible" message is really a warning but it
     significant if the 32-bit library is not found.
     Major x86-64 Linux distributions appear to be in the process of
     removing 32-bit support. Be aware that if you get 32-bit support
     working today on your Linux distribution that it might not work in
     next major release cycle.
     Bob Friesenhahn
     GraphicsMagick Maintainer, [3]
     Public Key,



reply via email to

[Prev in Thread] Current Thread [Next in Thread]