#1033553 libprelude failing to build from source on bookworm with python 3.11

Package:
src:libprelude
Source:
src:libprelude
Submitter:
Mayer, Dirk
Date:
2026-09-18 12:01:02 UTC
Severity:
normal
Tags:
#1033553#5
Date:
2023-03-27 11:16:21 UTC
From:
To:
Version: 5.2.0-5

Tags: bookworm ftbfs

Severity: serious


When I build this package from source, the build fails. Please see log output at the end.

My build environment is a container image based on Debian testing bookworm, which already includes python3.11



After some research I guess it may be related to the upgrade to pyhton3.11 and the new behavior which enforces pip install packages only in venv.

There is also a separation of user und system packages which may be the problem in an isolated buildroot.

There maybe a new PEP668 involved: https://peps.python.org/pep-0668/ https://peps.python.org/pep-0668/#keep-the-marker-file-in-container-images

https://discuss.python.org/t/python3-m-pip-install-user-broken-in-debian-testing/24268

And a long discussion about distros:

https://discuss.python.org/t/pep-668-marking-python-base-environments-as-externally-managed/10302/72







apt-get source --only-source libprelude=5.2.0-5

Reading package lists...

NOTICE: 'libprelude' packaging is maintained in the 'Git' version control system at:

https://salsa.debian.org/totol-guest/libprelude.git

Please use:

git clone https://salsa.debian.org/totol-guest/libprelude.git

to retrieve the latest (possibly unreleased) updates to the package.

Need to get 2,934 kB of source archives.

Get:1 https://snapshot.debian.org/archive/debian/20230325T212848Z bookworm/main libprelude 5.2.0-5 (dsc) [3,121 B]

Get:2 https://snapshot.debian.org/archive/debian/20230325T212848Z bookworm/main libprelude 5.2.0-5 (tar) [2,902 kB]

Get:3 https://snapshot.debian.org/archive/debian/20230325T212848Z bookworm/main libprelude 5.2.0-5 (asc) [163 B]

Get:4 https://snapshot.debian.org/archive/debian/20230325T212848Z bookworm/main libprelude 5.2.0-5 (diff) [28.6 kB]

dpkg-source: info: extracting libprelude in libprelude-5.2.0

dpkg-source: info: unpacking libprelude_5.2.0.orig.tar.gz

dpkg-source: info: unpacking libprelude_5.2.0-5.debian.tar.xz

dpkg-source: info: using patch list from debian/patches/series

dpkg-source: info: applying 001-ruby-m4.patch

dpkg-source: info: applying 004-fix_prelude_tests_timer.patch

dpkg-source: info: applying 005-fix_pthread_atfork.patch

dpkg-source: info: applying 006-fix_timegm.patch

dpkg-source: info: applying 007-fix_libprelude-error_hurd.patch

dpkg-source: info: applying 008-disable_test-poll_on_kfreebsd.patch

dpkg-source: info: applying 013-fix-test_rwlock1.patch

dpkg-source: info: applying 018-fix_gtkdoc_1.32.patch

dpkg-source: info: applying 020-ruby27.patch

dpkg-source: info: applying 021-Update_libprelude.m4.patch

dpkg-source: info: applying 022-Fix_libprelude_pkg-config-file.patch

dpkg-source: info: applying 023-Disable_GnuLib_Tests_perror2_strerror.patch

dpkg-source: info: applying 024-Fix_Config_H.patch

dpkg-source: info: applying 025-Fix-PyIOBase_Type.patch

Fetched 2,934 kB in 1min 24s (35.0 kB/s)

++ find . -maxdepth 1 -type d

++ tail -n1

+ UNPACKED_FOLDER=./libprelude-5.2.0

+ pushd ./libprelude-5.2.0

/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0 /work/tmp/libprelude_5.2.0-5 ~

+ [[ -d /git/customization/bookworm/libprelude ]]

+ popd

+ tar cJf /work/libprelude_5.2.0-5.combined.tar.xz ./libprelude-5.2.0

/work/tmp/libprelude_5.2.0-5 ~

/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0 /work/tmp/libprelude_5.2.0-5 ~
--- BUILDING libprelude 5.2.0-5+ pushd ./libprelude-5.2.0

+ echo -n '--- BUILDING libprelude 5.2.0-5'

+ sudo -E apt-get build-dep --only-source -y libprelude=5.2.0-5

Reading package lists...

Building dependency tree...

Reading state information...

The following NEW packages will be installed:

  dh-python docbook docbook-to-man docbook-xml docbook-xsl gawk gem2deb

  gem2deb-test-runner gtk-doc-tools libblkid-dev libevent-2.1-7 libffi-dev

  libgcrypt20-dev libglib2.0-dev libglib2.0-dev-bin libgmp-dev libgmpxx4ldbl

  libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx30

  libgpg-error-dev libidn2-dev libltdl-dev libltdl7 liblua5.1-0

  liblua5.1-0-dev libmount-dev libncurses-dev libncurses6 libosp5

  libp11-kit-dev libpcre2-16-0 libpcre2-32-0 libpcre2-dev libpcre2-posix3

  libperl-dev libpkgconf3 libpython3-all-dev libreadline-dev libruby

  libruby3.1 libselinux1-dev libsepol-dev libsigsegv2 libtasn1-6-dev

  libunbound8 libxslt1.1 lua5.1 nettle-dev opensp pkg-config pkgconf

  pkgconf-bin python3-all python3-all-dev python3-lxml python3-pygments rake

  ruby ruby-all-dev ruby-net-telnet ruby-rubygems ruby-sdbm ruby-webrick

  ruby-xmlrpc ruby3.1 ruby3.1-dev rubygems-integration sgml-data swig swig4.0

  uuid-dev xsltproc

…

…

..

…

..



Making install in tests

make[4]: Entering directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/tests'

make[5]: Entering directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/tests'

make[5]: Nothing to be done for 'install-exec-am'.

make[5]: Nothing to be done for 'install-data-am'.

make[5]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/tests'

make[4]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/tests'

make[4]: Entering directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

make[5]: Entering directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

/usr/bin/mkdir -p '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/bin'

/usr/bin/install -c ./libprelude-config '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/bin'

/usr/bin/install -c -d -m 711 /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/var/spool/prelude;

/usr/bin/install -c -d -m 755 /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/etc/prelude;

/usr/bin/install -c -d -m 755 /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/etc/prelude/default;

/usr/bin/install -c -d -m 711 /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/etc/prelude/profile;

/usr/bin/mkdir -p '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/include/libprelude'

/usr/bin/install -c -m 644 prelude-config.h '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/include/libprelude'

make[5]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

make[4]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

make[3]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

make[2]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

find . -name "__pycache__" -exec rm -rvf {} +

removed './debian/tmp/usr/local/lib/python3.11/dist-packages/__pycache__/prelude.cpython-311.pyc'

removed directory './debian/tmp/usr/local/lib/python3.11/dist-packages/__pycache__'

find . -name "*.la" -exec sed -i -e 's/^dependency_libs=.*$/dependency_libs=/g' {} +

mkdir -pv /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/share/doc/libprelude-doc

mkdir: created directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/share/doc'

mkdir: created directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/share/doc/libprelude-doc'

ln -s /usr/share/gtk-doc/html/libprelude /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp/usr/share/doc/libprelude-doc/html

cd bindings/python && python3.11 setup.py install --root /work/tmp/libprelude_5.2.0-5/libprelude-5.2.0/debian/tmp

/usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.

  warnings.warn(

dh override_dh_auto_install --with ruby

make[1]: Leaving directory '/work/tmp/libprelude_5.2.0-5/libprelude-5.2.0'

   dh_install

dh_install: warning: Cannot find (any matches for) "debian/tmp/usr/lib/python3*/*/*" (tried in ., debian/tmp)



dh_install: warning: python3-prelude missing files: debian/tmp/usr/lib/python3*/*/*

dh_install: error: missing files, aborting

make: *** [debian/rules:59: binary] Error 25

dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

debuild: fatal error at line 1182:

dpkg-buildpackage -us -uc -ui -F failed









By the way:

There are multiple other python based source packages, which are also failing to build in a bookworm based build environment, all with a similar error message:

dh_install: warning: Cannot find (any matches for) "usr/lib/python3*" (tried in ., debian/tmp)

dh_install: warning: python3-pwquality missing files: usr/lib/python3*

dh_install: error: missing files, aborting

make: *** [debian/rules:15: binary] Error 25



These are: libpwquality_1.4.5-1, libseccomp_2.5.4-1



For reference: libpwquality already reported here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1033353

#1033553#10
Date:
2025-03-18 21:19:19 UTC
From:
To:
I cannot reproduce this issue.
#1033553#17
Date:
2026-09-18 11:58:41 UTC
From:
To:
Dear submitter,

as the package libprelude has just been removed from the Debian archive
unstable we hereby close the associated bug reports.  We are sorry
that we couldn't deal with your issue properly.

For details on the removal, please see https://bugs.debian.org/1081473

The version of this package that was in Debian prior to this removal
can still be found using https://snapshot.debian.org/.

Please note that the changes have been done on the master archive and
will not propagate to any mirrors until the next dinstall run at the
earliest.

This message was generated automatically; if you believe that there is
a problem with it please contact the archive administrators by mailing
ftpmaster@ftp-master.debian.org.

Debian distribution maintenance software
pp.
Thorsten Alteholz (the ftpmaster behind the curtain)