Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Apr 2024 21:23:32 +0900
From:      Junho Choi <junho.choi@gmail.com>
To:        =?UTF-8?Q?Yann_Kerherv=C3=A9?= <yann.kerherve@gmail.com>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: quiche dependency issue in FreeBSD
Message-ID:  <CAJ5e%2BHA%2BJJksL7RK3%2BCt-cWE3WOY3cNBDcbrUaE58H1GnQTFrw@mail.gmail.com>
In-Reply-To: <CAJ5e%2BHDfs1-_jK7iwnZsSwVOSwav_TzN7RU=A-cN9g4v2Rtumg@mail.gmail.com>
References:  <CAMTe54qdzhpmXGrJ2ihaYQ8RpEScEkvuU3b=OiXVwQ_71wF11Q@mail.gmail.com> <CAJ5e%2BHDfs1-_jK7iwnZsSwVOSwav_TzN7RU=A-cN9g4v2Rtumg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I was looking into pkg source and found a relevant line:

https://github.com/freebsd/pkg/blob/b0a68a933f42aec97c8f37543bcac41149c28e2=
e/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=E2=80=AFPM 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=E2=80=AFAM Yann Kerherv=C3=A9 <yann.kerherv=
e@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 =3D> /usr/local/lib/libquiche.so (0x3af8e91e0000)
> >
> > It seems like the package build missed that dependency and doesn't repo=
rt 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=3D 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



--=20
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ5e%2BHA%2BJJksL7RK3%2BCt-cWE3WOY3cNBDcbrUaE58H1GnQTFrw>