[clamav-users] Unable to compile 0.102.0 - /usr/lib64/../lib/libstdc++.so

Carlos Velasco carlos.velasco at nimastelecom.com
Wed Oct 2 18:17:39 EDT 2019


Hello,

Trying to compile clamav 0.102.0 in a LFS system fails with:
/usr/bin/ld: /usr/lib64/../lib/libstdc++.so: error adding symbols: file in wrong format

Same system compiles 0.101.4 without problems.

I have made some troubleshooting...
"-L/usr/lib" is added to LDFLAGS. However this system is multilib with 64bits libs in /usr/lib64, not /usr/lib. This causes the error.

The LDFLAGS comes from libz.m4, different file from 0.101.4.
If the system don't use Pkgconfig (like this system), check is made by header, but then there is a weird check:

            if test "x${ZLIB_HOME}" != "x"; then
                 ...
                LDFLAGS="$LDFLAGS -L$ZLIB_HOME/lib"

In 0.101.4 test is different:

    if test "$ZLIB_HOME" != "/usr"; then
        CPPFLAGS="$CPPFLAGS -I$ZLIB_HOME/include"
        save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS -L$ZLIB_HOME/lib"

The point is, in this case ZLIB_HOME is /usr, so don't need to add new lib dir, system lib dirs will do.
However the logic in 0.102.0 seems flawed.

Regards,
Carlos Velasco

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clamav.net/pipermail/clamav-users/attachments/20191003/ee14d571/attachment.html>


More information about the clamav-users mailing list