On 2020-08-09 12:28, Adam Dinwoodie wrote: > On Fri, 24 Jul 2020 at 13:56, Adam Dinwoodie wrote: >> On Mon, 20 Jul 2020 at 13:53, Brian Inglis wrote: >>> The following packages have been uploaded to the Cygwin distribution: >>> * curl 7.71.1 >>> * libcurl4 7.71.1 >>> * libcurl-devel 7.71.1 >>> * libcurl-doc 7.71.1
>> This update appears to break parts of Git compilation that work using >> {curl,libcurl4,libcurl-devel}-7.66.0-1. >> >> Simple test case and error output below, setup.log and cygcheck.out >> attached; the setup.log includes a bunch of recent upgrades and >> downgrades while I isolated the problem and confirmed the STC. >> >> Test case: From a Bash shell, run: `curl >> https://git.kernel.org/pub/scm/git/git.git/snapshot/git-v2.27.0.tar.gz >> | tar -xz && cd git-v2.27.0 && make configure && ./configure >> --with-libpcre && make -j18 git-remote-http.exe`. This is a simplified >> version of the normal Cygport build process for the Cygwin Git >> packages. >> >> In the failing case, the `/configure` stage includes the following >> text: `configure: Setting CURL_LDFLAGS to '-lcurl -lnghttp2 -lidn2 >> -lssh -lpsl -lssl -lcrypto -lldap -llber -lbrotlidec -lbrotlidec >> -lz'`; in the working case using -7.66.0-1, the corresponding line is >> just `configure: Setting CURL_LDFLAGS to '-lcurl'`. >> >> The error output at the end of the build in the failing case is as below: >> >> ``` >> LINK git-remote-http.exe >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lnghttp2 >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lidn2 >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lssh >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lpsl >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lldap >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -llber >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lbrotlidec >> /usr/lib/gcc/x86_64-pc-cygwin/9.3.0/../../../../x86_64-pc-cygwin/bin/ld: >> cannot find -lbrotlidec >> collect2: error: ld returned 1 exit status >> make: *** [Makefile:2488: git-remote-http.exe] Error 1 >> ``` >> >> For now I'm going to continue using the 7.66.0-1 packages; let me know >> if I can help with working out what's going wrong here at all. > Is there anything further I can do to help investigate this regression > in the Cygwin curl libraries? Your previous post never made it to me, either cygwin or cygwin-apps lists, their archives, or mail-archives'. Please check the archives and your email and repost. Meanwhile, that info likely comes from: $ tail -vn15 /lib/pkgconfig/libcurl.pc ==> /lib/pkgconfig/libcurl.pc <== # prefix=/usr exec_prefix=/usr libdir=${exec_prefix}/lib includedir=${prefix}/include supported_protocols="DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3 POP3S RTSP SCP SFTP SMB SMBS SMTP SMTPS TELNET TFTP" supported_features="SSL IPv6 UnixSockets libz brotli AsynchDNS IDN PSL NTLM NTLM_WB TLS-SRP HTTP2 HTTPS-proxy" Name: libcurl URL: https://curl.haxx.se/ Description: Library to transfer files with ftp, http, etc. Version: 7.71.1 Libs: -L${libdir} -lcurl Libs.private: -lnghttp2 -lidn2 -lssh -lpsl -lssl -lcrypto -lldap -llber -lbrotlidec -lbrotlidec -lz Cflags: -I${includedir} it looks like your git build should be using Libs for dynamic builds and adding Libs.private for static builds, so please check whether and how that is used, and whether you have at least the runtime libs installed, and also the -devel packages if you are building statically. Static builds are not uncommon for test versions of package modules, as that avoids issues with having to install package or dependency dynamic libraries that may not yet be ready for prime time. I have never had any problems with packages using pkgconf/-config and never had to look into it, so anyone with more knowledge and experience of issues there should feel free to contribute. Trying to build with cygport: - it died silently as I did not have bash-completion-devel installed: could you please perhaps move that pkg-config line into src-compile, so that cygport can at least run, check, and complain about missing dependencies? - it complains that perl(DBD::SQLite) perl(IO::Pty) are not installed - how do these and your other perl module dependencies map to Cygwin packages? I also mean that in general - how can I map a perl module to a perl package and vice versa - for future info? -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. [Data in IEC units and prefixes, physical quantities in SI.] -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple