From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Bernd Kuhls <bernd@kuhls.net>
Cc: buildroot@uclibc.org
Subject: Re: [Buildroot] [PATCH 1/2] package/berkeleydb: add option for historic dbm interface
Date: Tue, 8 Aug 2023 21:48:34 +0200 [thread overview]
Message-ID: <20230808214834.3de77057@windsurf> (raw)
In-Reply-To: <pan$23d9a$9e16430b$9042433f$15f9ab31@ID-313208.user.individual.net>
Hello,
On Tue, 08 Aug 2023 18:01:40 +0200
Bernd Kuhls <bernd@kuhls.net> wrote:
> the problem I am fixing is only about the detection during configure and
> unrelated to the code of the dbm module.
I understand, but it raises additional questions.
> The detection logic in Python 3.11 tries to link a sample program
> containing "dbm_open()" to -ldb: https://github.com/python/cpython/blob/
> d2340ef25721b6a72d45d4508c672c4be38c67d3/configure.ac#L4007
>
> and fails, for whatever reason:
> conftest.c:(.text.startup+0x8): undefined reference to `__db_ndbm_open'
Absolutely, this is understood.
> The detection in Python 3.10 is aimed only at the existence of the library
> file and does not try to link code: https://github.com/python/cpython/
> blob/b4e48a444ea02921ce4b701fe165e6cfd4cf5845/setup.py#L1430C34-L1430C65
Correct.
> > So I'm really confused. How does it work in Python 3.10 ? Did we already
> > need the historic dbm interface back then ?
>
> Me, too, but only because my knowledge about C functions, macro expansion
> etc. is very limited, I can not comment your analysis why the dbm module
> works despite missing symbols. Anyway, with Python 3.11 the dbm module is
> not build at all atm.
Yes, I understand that, but rather than "blindly" fixing the issue, I'd
like to understand what is happening. Indeed, as I explained in
previous e-mail, the dbm module in Python 3.10 is *already* using
__db_ndbm_open(), which isn't provided by libdb-5.3.so, so I'm really
confused on how it can work today. Perhaps we have an existing issue in
Python 3.10, and your change needs to also be backported to our
maintenance branch? This is why understand what's happening is
important.
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-08-08 19:48 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-07 17:45 [Buildroot] [PATCH 1/2] package/berkeleydb: add option for historic dbm interface Bernd Kuhls
2023-08-07 17:45 ` [Buildroot] [PATCH 2/2] package/python3: berkeleydb support needs the " Bernd Kuhls
2023-09-11 20:50 ` Peter Korsgaard
2023-08-07 21:14 ` [Buildroot] [PATCH 1/2] package/berkeleydb: add option for historic " Thomas Petazzoni via buildroot
[not found] ` <20230807231438.6bfe2c7a__31533.8530390122$1691442911$gmane$org@windsurf>
2023-08-08 16:01 ` Bernd Kuhls
2023-08-08 19:48 ` Thomas Petazzoni via buildroot [this message]
2023-09-11 20:50 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230808214834.3de77057@windsurf \
--to=buildroot@buildroot.org \
--cc=bernd@kuhls.net \
--cc=buildroot@uclibc.org \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox