Re: quiche dependency issue in FreeBSD
- In reply to: Junho Choi : "Re: quiche dependency issue in FreeBSD"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 22 Jul 2024 10:23:46 UTC
This is solved by updating quiche and dnsdist to handle the .so version properly. Best, On Sun, Jul 14, 2024 at 9:49 PM Junho Choi <junho.choi@gmail.com> wrote: > Yann, > > I filed a patch to update quiche to 0.22.0, with a correct .so > installation. > > With this port, I don't get "dnsdist is missing a required shared > library: libquiche.so" any more. > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280274 > > It'd be great if any committer will pick it up! > > Best, > > > On Thu, Jun 27, 2024 at 11:29 AM Junho Choi <junho.choi@gmail.com> wrote: > >> quiche 0.22.0 with the soname fix released: >> https://github.com/cloudflare/quiche/releases/tag/0.22.0 >> >> On Tue, Apr 30, 2024 at 9:23 PM Junho Choi <junho.choi@gmail.com> wrote: >> >>> I was looking into pkg source and found a relevant line: >>> >>> >>> https://github.com/freebsd/pkg/blob/b0a68a933f42aec97c8f37543bcac41149c28e2e/libpkg/pkg_elf.c#L402-L410 >>> >>> It seems to look for soname in the shared libs to be added to "shlibs >>> provided" section, but currently >>> quiche has no soname in the .so file: >>> https://github.com/cloudflare/quiche/issues/598 >>> >>> I made a PR to fix this: >>> https://github.com/cloudflare/quiche/pull/1769 >>> >>> After that, I made a fix on the port and now it looks ok: >>> >>> Shared Libs provided: >>> libquiche.so.0 >>> >>> Let's see how it is merged. I'll update the quiche port when it's ready. >>> >>> On Tue, Apr 30, 2024 at 12:17 PM Junho Choi <junho.choi@gmail.com> >>> wrote: >>> > >>> > (Cross posting to ports@) >>> > >>> > Yann - yes I can reproduce it but have no idea why. >>> > >>> > It seems quiche doesn't have a "Shared Lib provided" section like >>> > other libs. (see below) >>> > >>> > Other than USE_LDCONFIG, what affects it? Any advice from committers? >>> > >>> > % pkg info quiche >>> > quiche-0.20.1 >>> > Name : quiche >>> > Version : 0.20.1 >>> > Installed on : Tue Apr 30 03:14:32 2024 UTC >>> > Origin : net/quiche >>> > Architecture : FreeBSD:14:amd64 >>> > Prefix : /usr/local >>> > Categories : net >>> > Licenses : BSD2CLAUSE >>> > Maintainer : junho.choi@gmail.com >>> > WWW : https://crates.io/crates/quiche >>> > Comment : Savoury implementation of the QUIC transport protocol >>> > and HTTP/3 >>> > Options : >>> > DOCS : on >>> > QLOG : on >>> > Annotations : >>> > FreeBSD_version: 1400097 >>> > build_timestamp: 2024-04-04T20:02:03+0000 >>> > built_by : poudriere-git-3.4.1-1-g1e9f97d6 >>> > port_checkout_unclean: no >>> > port_git_hash : 0e1153d3a5 >>> > ports_top_checkout_unclean: no >>> > ports_top_git_hash: f5d16d08a6 >>> > repo_type : binary >>> > repository : FreeBSD >>> > Flat size : 48.2MiB >>> > >>> > >>> > Other example (libnghttp2 has "Shared Lib Provided" section) >>> > >>> > % pkg info libnghttp2 >>> > libnghttp2-1.61.0 >>> > Name : libnghttp2 >>> > Version : 1.61.0 >>> > Installed on : Sun Apr 21 12:06:36 2024 UTC >>> > Origin : www/libnghttp2 >>> > Architecture : FreeBSD:14:amd64 >>> > Prefix : /usr/local >>> > Categories : www net >>> > Licenses : MIT >>> > Maintainer : sunpoet@FreeBSD.org >>> > WWW : https://nghttp2.org/ >>> > Comment : HTTP/2.0 C Library >>> > Shared Libs provided: >>> > libnghttp2.so.14 >>> > Annotations : >>> > FreeBSD_version: 1400097 >>> > build_timestamp: 2024-04-11T01:12:38+0000 >>> > built_by : poudriere-git-3.4.1-1-g1e9f97d6 >>> > cpe : cpe:2.3:a:nghttp2:nghttp2:1.61.0:::::freebsd14:x64 >>> > port_checkout_unclean: no >>> > port_git_hash : 2b3fb39407 >>> > ports_top_checkout_unclean: no >>> > ports_top_git_hash: 2910ff97e7 >>> > repo_type : binary >>> > repository : FreeBSD >>> > Flat size : 801KiB >>> > >>> > On Fri, Apr 26, 2024 at 11:32 AM Yann Kerhervé < >>> yann.kerherve@gmail.com> wrote: >>> > > >>> > > Hello, >>> > > >>> > > I have an issue with `pkg check` reporting a dependency missing: >>> > > >>> > > root@dev:~ # pkg check -d -a >>> > > Checking all packages: 100% >>> > > dnsdist is missing a required shared library: libquiche.so >>> > > >>> > > (in FreeBSD 13.3 and 14.0) >>> > > >>> > > This is bogus: >>> > > root@dev:~ # ldd /usr/local/sbin/dnsdist | grep quiche >>> > > libquiche.so => /usr/local/lib/libquiche.so (0x3af8e91e0000) >>> > > >>> > > It seems like the package build missed that dependency and doesn't >>> report as a shared lib provided by quiche? >>> > > >>> > > # pkg info -b quiche >>> > > quiche-0.20.1: >>> > > >>> > > Should there be a shared lib provided there: >>> > > >>> > > quiche-0.20.1: >>> > > libquiche.so >>> > > >>> > > I thought that the USE_LDCONFIG= yes in the Makefile was taking care >>> of that automatically. And this is correctly set in the Makefile... >>> > > >>> > > Thanks! >>> > > >>> > > Yann >>> > > >>> > > >>> > > >>> > >>> > >>> > -- >>> > Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net >>> >>> >>> >>> -- >>> Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net >>> >> >> >> -- >> Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net >> > > > -- > Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net > -- Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net