net-ftp/lftp-4.9.2-r1 with USE=socks5 causes configure error, when finding libsocks, because (probably) net-proxy/dante-1.4.3 won't provide /usr/lib64/libsocks.so, but libsocks.so.0. Reproducible: Always Steps to Reproduce: 1. USE=socks5 emerge =net-ftp/lftp-4.9.2-r1 Actual Results: As follows. I'll provide build.log, later. -- checking for main in -lsocks... no configure: error: cannot find -lsocks library !!! Please attach the following file when seeking support: !!! /var/tmp/portage/net-ftp/lftp-4.9.2-r1/work/lftp-4.9.2/config.log * ERROR: net-ftp/lftp-4.9.2-r1::gentoo failed (configure phase): * econf failed Expected Results: emerge should be finished successfully. CONTENTS of net-proxy/dante-1.4.2 in my box shows; # fgrep libsocks /var/db/pkg/net-proxy/dante-1.4.3/CONTENTS sym /usr/lib64/libsocks.so.0 -> libsocks.so.0.1.1 1658163911 obj /usr/lib64/libsocks.so.0.1.1 ccf9ba7a82fe0de151ab72a5827debb8 1658163914 obj /usr/lib64/libsocksd.a 158fd5001297dc099f057cacc961599a 1731991845 sym /usr/lib64/libsocksd.so -> libsocksd.so.0.1.1 1731991843 sym /usr/lib64/libsocksd.so.0 -> libsocksd.so.0.1.1 1731991843 obj /usr/lib64/libsocksd.so.0.1.1 ca2f04f2650429e6b3148c0c995e2b5b 1731991845 I don't know whether I should fix lftp or dante. Neither env-update nor ldconfig didn't resolve the issue.
Created attachment 913541 [details] build.log
Created attachment 913542 [details] emerge --info
thanks for the report; could you please attach: /var/tmp/portage/net-ftp/lftp-4.9.2-r1/work/lftp-4.9.2/config.log
Created attachment 913543 [details] config.log
Created attachment 914336 [details, diff] fix configuration with dante The first part of the problem is the code in configure.ac: if test x$with_socks = xyes; then AC_DEFINE(SOCKS4, 1, [define if you are building with SOCKS support]) AC_CHECK_LIB(socks, main, [SOCKSLIBS=-lsocks], [AC_MSG_ERROR([cannot find -lsocks library])]) fi if test x$with_socks5 = xyes; then AC_DEFINE(SOCKS5, 1, [define if you are building with SOCKSv5 support]) AC_CHECK_LIB(socks5, main, [SOCKSLIBS=-lsocks5], [AC_MSG_ERROR([cannot find -lsocks5 library])]) fi if test x$with_socksdante = xyes; then AC_DEFINE(SOCKS_DANTE, 1, [define if you are building with SOCKS-Dante support]) AC_CHECK_LIB(socks, main, [SOCKSLIBS=-lsocks], [AC_MSG_ERROR([cannot find -lsocks library])]) fi AC_CHECK_LIB tries to find the main() function in the socks library, which results in a recursion error. The second part of the problem is that on my system dante did not install the libsocks.so symlink, only libsocks.so.0, so the linker cannot find libsocks. The proposed patch solves both problems.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46f0106ecdc04ce7201bb08952c0469bba5da9bc commit 46f0106ecdc04ce7201bb08952c0469bba5da9bc Author: Conrad Kostecki <conikost@gentoo.org> AuthorDate: 2024-12-29 18:19:49 +0000 Commit: Conrad Kostecki <conikost@gentoo.org> CommitDate: 2024-12-29 18:22:40 +0000 net-ftp/lftp: fix build with socket Closes: https://bugs.gentoo.org/946078 Signed-off-by: Conrad Kostecki <conikost@gentoo.org> net-ftp/lftp/files/lftp-4.9.2-socks.patch | 26 ++++++++++++++++++++++++++ net-ftp/lftp/lftp-4.9.2-r1.ebuild | 1 + 2 files changed, 27 insertions(+)