#1149273 feather-wallet: FTBFS with boost 1.92

#1149273#5
Date:
2026-09-29 04:49:47 UTC
From:
To:
Dear Maintainer,

Boost 1.92 will most likely be the default boost version in the
upcoming Debian 14 (forky) release.

feather-wallet FTBFS with boost 1.92. Note that the FTBFS may not necessarily be
connected to boost - please check the build log for the actual cause.

boost-defaults pointing to 1.92 is available in experimental, so you can
rebuild your package against it to reproduce the failure and test the fix.

Note: This ticket severity will be increased to RC bug when
boost-defaults is switched to 1.92.

If your package depends on versioned boost packages (e.g. libboost1.90-dev),
please switch to the unversioned (default) ones (e.g. libboost-dev), so the
package follows future boost transitions automatically.

Here is the most probably relevant part of the failing build log:

==================== build log ====================

make  -f monero/external/easylogging++/CMakeFiles/easylogging.dir/build.make monero/external/easylogging++/CMakeFiles/easylogging.dir/build
[  0%] Building CXX object monero/src/device_trezor/CMakeFiles/obj_device_trezor.dir/trezor/messages_map.cpp.o
make[3]: Entering directory '/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu'
cd /build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/src/device_trezor && /usr/bin/x86_64-linux-gnu-g++ -DAUTO_INITIALIZE_EASYLOGGINGPP -DBLOCKCHAIN_DB=DB_LMDB -DBOOST_ASIO_ENABLE_SEQUENTIAL_STRAND_ALLOCATION -DBOOST_NO_AUTO_PTR -DBOOST_UUID_DISABLE_ALIGNMENT -DBUILD_GUI_DEPS=1 -DDEFAULT_DB_TYPE=\"lmdb\" -DDEVICE_TREZOR_READY=1 -DHAVE_EXPLICIT_BZERO -DHAVE_HIDAPI -DHAVE_READLINE -DHAVE_STRPTIME -DHAVE_TREZOR_LIBUSB=1 -DPER_BLOCK_CHECKPOINT -DPROTOBUF_INLINE_NOT_IN_HEADERS=0 -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/rapidjson/include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/easylogging++ -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/contrib/epee/include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/supercop/include -I/build/reproducibl
 e-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/generated_include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/translations -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/db_drivers/liblmdb -I/usr/include/hidapi -I/usr/include/libusb-1.0 -g -O2 -ffile-prefix-map=/build/reproducible-path/feather-wallet-2.8.1+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -DNO_AES  -Dcryptonote=MWYSUTPAXIBT -fno-strict-aliasing -D_GNU_SOURCE   -Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Wno-error=extra -Wno-error=deprecated-declarations -Wno-unused-parameter -Wno-error=unused-variable -Wno-error=undef -Wno-error=uninitialized -Wlogical-op -Wno-error=maybe-uninitialized -Wno-error=cpp -Wno-reorder -Wno-missing-field-initializers -fPIC  -Wformat -Wformat-security -fstack-protector -fstac
 k-protector-strong -fcf-protection=full -fstack-clash-protection -Werror=switch -Werror=return-type -fno-strict-aliasing -ftemplate-depth=900 -std=c++17 -MD -MT monero/src/device_trezor/CMakeFiles/obj_device_trezor.dir/trezor/messages_map.cpp.o -MF CMakeFiles/obj_device_trezor.dir/trezor/messages_map.cpp.o.d -o CMakeFiles/obj_device_trezor.dir/trezor/messages_map.cpp.o -c /build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp
[  0%] Building CXX object monero/external/easylogging++/CMakeFiles/easylogging.dir/easylogging++.cc.o
cd /build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/external/easylogging++ && /usr/bin/x86_64-linux-gnu-g++ -DAUTO_INITIALIZE_EASYLOGGINGPP -DBLOCKCHAIN_DB=DB_LMDB -DDEFAULT_DB_TYPE=\"lmdb\" -DHAVE_EXPLICIT_BZERO -DHAVE_STRPTIME -DPER_BLOCK_CHECKPOINT -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/rapidjson/include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/easylogging++ -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/contrib/epee/include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/supercop/include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/generated_include -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/translations -I/build/reproducible-path/feather-wallet-2.8.1+dfsg/
 obj-x86_64-linux-gnu/monero/external/easylogging++ -g -O2 -ffile-prefix-map=/build/reproducible-path/feather-wallet-2.8.1+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -std=c++11 -fPIC -MD -MT monero/external/easylogging++/CMakeFiles/easylogging.dir/easylogging++.cc.o -MF CMakeFiles/easylogging.dir/easylogging++.cc.o.d -o CMakeFiles/easylogging.dir/easylogging++.cc.o -c /build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/external/easylogging++/easylogging++.cc
In file included from /build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp:30:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp: In static member function ‘static hw::trezor::messages::MessageType hw::trezor::MessageMapper::get_message_wire_number()’:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:34: error: ‘is_base_of’ is not a member of ‘boost’; did you mean ‘std::is_base_of’? [-Wtemplate-body]
   75 |       BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                  ^~~~~~~~~~
In file included from /usr/include/c++/16/bits/char_traits.h:52,
                 from /usr/include/c++/16/string:45,
                 from /build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:33:
/usr/include/c++/16/type_traits:1642:12: note: ‘std::is_base_of’ declared here
 1642 |     struct is_base_of
      |            ^~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:70: error: expected primary-expression before ‘,’ token [-Wtemplate-body]
   75 |       BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                      ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:81: error: expected primary-expression before ‘>’ token [-Wtemplate-body]
   75 |       BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                                 ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:84: error: ‘::value’ has not been declared [-Wtemplate-body]
   75 |       BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                                    ^~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:7: error: there are no arguments to ‘BOOST_STATIC_ASSERT’ that depend on a template parameter, so a declaration of ‘BOOST_STATIC_ASSERT’ must be available [-Wtemplate-body]
   75 |       BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |       ^~~~~~~~~~~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:75:7: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp: In function ‘std::shared_ptr<_Tp> hw::trezor::message_ptr_retype(std::shared_ptr<google::protobuf::Message>&)’:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:82:32: error: ‘is_base_of’ is not a member of ‘boost’; did you mean ‘std::is_base_of’? [-Wtemplate-body]
   82 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                ^~~~~~~~~~
/usr/include/c++/16/type_traits:1642:12: note: ‘std::is_base_of’ declared here
 1642 |     struct is_base_of
      |            ^~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:82:68: error: expected primary-expression before ‘,’ token [-Wtemplate-body]
   82 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                    ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:82:79: error: expected primary-expression before ‘>’ token [-Wtemplate-body]
   82 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                               ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:82:82: error: ‘::value’ has not been declared [-Wtemplate-body]
   82 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                                  ^~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:82:5: error: there are no arguments to ‘BOOST_STATIC_ASSERT’ that depend on a template parameter, so a declaration of ‘BOOST_STATIC_ASSERT’ must be available [-Wtemplate-body]
   82 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |     ^~~~~~~~~~~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp: In function ‘std::shared_ptr<_Tp> hw::trezor::message_ptr_retype_static(std::shared_ptr<google::protobuf::Message>&)’:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:92:32: error: ‘is_base_of’ is not a member of ‘boost’; did you mean ‘std::is_base_of’? [-Wtemplate-body]
   92 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                ^~~~~~~~~~
/usr/include/c++/16/type_traits:1642:12: note: ‘std::is_base_of’ declared here
 1642 |     struct is_base_of
      |            ^~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:92:68: error: expected primary-expression before ‘,’ token [-Wtemplate-body]
   92 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                    ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:92:79: error: expected primary-expression before ‘>’ token [-Wtemplate-body]
   92 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                               ^
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:92:82: error: ‘::value’ has not been declared [-Wtemplate-body]
   92 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |                                                                                  ^~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.hpp:92:5: error: there are no arguments to ‘BOOST_STATIC_ASSERT’ that depend on a template parameter, so a declaration of ‘BOOST_STATIC_ASSERT’ must be available [-Wtemplate-body]
   92 |     BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
      |     ^~~~~~~~~~~~~~~~~~~
In file included from /build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp:32:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages/messages-common.pb.h: At global scope:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages/messages-common.pb.h:763:5: warning: ‘hw::trezor::messages::common::ButtonRequest_ButtonRequestType__Deprecated_ButtonRequest_PassphraseType’ is deprecated [-Wdeprecated-declarations]
  763 |     ButtonRequest_ButtonRequestType__Deprecated_ButtonRequest_PassphraseType;
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages/messages-common.pb.h:157:3: note: declared here
  157 |   ButtonRequest_ButtonRequestType__Deprecated_ButtonRequest_PassphraseType PROTOBUF_DEPRECATED_ENUM = 14,
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp: In static member function ‘static google::protobuf::Message* hw::trezor::MessageMapper::get_message(const std::string&)’:
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp:83:23: warning: loop variable ‘text’ of type ‘const std::string&’ {aka ‘const std::__cxx11::basic_string<char>&’} binds to a temporary constructed from type ‘const char*’ [-Wrange-loop-construct]
   83 |     for(const string &text : PACKAGES){
      |                       ^~~~
/build/reproducible-path/feather-wallet-2.8.1+dfsg/monero/src/device_trezor/trezor/messages_map.cpp:83:23: note: use non-reference type ‘const std::string’ {aka ‘const std::__cxx11::basic_string<char>’} to make the copy explicit or ‘const char* const&’ to prevent copying
make[3]: *** [monero/src/device_trezor/CMakeFiles/obj_device_trezor.dir/build.make:82: monero/src/device_trezor/CMakeFiles/obj_device_trezor.dir/trezor/messages_map.cpp.o] Error 1
make[3]: Leaving directory '/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:2475: monero/src/device_trezor/CMakeFiles/obj_device_trezor.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
[  0%] Linking CXX static library libeasylogging.a
cd /build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/external/easylogging++ && /usr/bin/cmake -P CMakeFiles/easylogging.dir/cmake_clean_target.cmake
cd /build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu/monero/external/easylogging++ && /usr/bin/cmake -E cmake_link_script CMakeFiles/easylogging.dir/link.txt --verbose=1
/usr/bin/x86_64-linux-gnu-ar qc libeasylogging.a CMakeFiles/easylogging.dir/easylogging++.cc.o
/usr/bin/x86_64-linux-gnu-ranlib libeasylogging.a
make[3]: Leaving directory '/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu'
[  0%] Built target easylogging
make[2]: Leaving directory '/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/feather-wallet-2.8.1+dfsg/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j2 INSTALL="install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:21: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
==================== end of build log =============

Thanks,

Anton Gladky

#1149273#10
Date:
2026-10-02 22:41:55 UTC
From:
To:
There is a pending patch that fixes this.
#1149273#21
Date:
2026-10-08 04:03:28 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
feather-wallet, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1149273@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Soren Stoutner <soren@debian.org> (supplier of updated feather-wallet package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Wed, 07 Oct 2026 20:18:01 -0700
Source: feather-wallet
Architecture: source
Version: 2.8.1+dfsg-7
Distribution: unstable
Urgency: medium
Maintainer: Debian Cryptocoin Team <team+cryptocoin@tracker.debian.org>
Changed-By: Soren Stoutner <soren@debian.org>
Closes: 1138339 1149273
Changes:
 feather-wallet (2.8.1+dfsg-7) unstable; urgency=medium
 .
   * Add debian/patches/fix-openssl4-compat.patch, thanks Reuben Roessler
     (closes: #1138339).
   * Add debian/patches/fix-boost-1.92 (closes: #1149273).
   * debian/control:
     - Bump debhelper-compat from version 13 to 14, removing the now-unnecessary
       Depends on ${misc:Depends} and ${shlibs:Depends}.
     - Add Build-Depends on dh-sequence-single-binary.
Checksums-Sha1:
 02e141da73f20a37d8694d2224e29f84d121d0b0 2552 feather-wallet_2.8.1+dfsg-7.dsc
 b1fde75992b4b6e44b78b394f7f8dcd06586c430 19716 feather-wallet_2.8.1+dfsg-7.debian.tar.xz
 f347e682816ae6be820801651914eefc59b93e84 19399 feather-wallet_2.8.1+dfsg-7_amd64.buildinfo
Checksums-Sha256:
 e7fb0045217ff72f44117a834208af6cf17d8898fd62f6b67909dd0244c74f2e 2552 feather-wallet_2.8.1+dfsg-7.dsc
 a740390ba6b2628dae7de38a2f11a9bb64db4ffea47793f68225da324fafc3a7 19716 feather-wallet_2.8.1+dfsg-7.debian.tar.xz
 72765a09d0fa65e38d367a31a65dcee1ab379d0afce47e8a7cf0925b95e469c5 19399 feather-wallet_2.8.1+dfsg-7_amd64.buildinfo
Files:
 00c147aceb56c9468c982ee0aa6fb340 2552 utils optional feather-wallet_2.8.1+dfsg-7.dsc
 a31161f508c48f77e3950a4cce130f9a 19716 utils optional feather-wallet_2.8.1+dfsg-7.debian.tar.xz
 9396749cd9b3f24906e2a876e03b567c 19399 utils optional feather-wallet_2.8.1+dfsg-7_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmrHDO8ACgkQwufLJ66w
tgMiLg/8C9wKnawikoqeNdrBF9EIgmrN+b/ssFNDRBh55WWXBWfQz4YW1+qKXJPe
nfjm4nq6SanFsoYFeKPRu+9IG56LoTxrQZ11AAevDu9hYAH8C0owU6rAICiNYuzB
nK0Ig1AdVWo5SRZum0Iyf7fETw6EIAbL155qSYgz71d3A0HV4kQkW2uUy4Fq0/1m
7p/BT9dsVt5m8ZIK7gnxakecGcXety1cOvKbcZPmb55SitFza//LhQaCbl+dbOsO
+VkUE2/ObV/f7cJGubCohLhJBKRMmHGs43dDemgivLe1pbcWr2mn9BRn1Y2sq4pX
oaLNkBOpjfOBmTDv7DX4kYTmAjVzggEY05G4dBRdDwRP0uK3+tWrjt5yhktBkexN
fKLYytMmMvrGcRqrKjqxJCxVdhg4aDULc+KLn6BN61y1EoeSPgzED0Nm1Q6AXgem
/PsLT9nC9f5HytNxZ6mYcAQ2ZdzPAFx7Dy+KhQ0278OvSbChxZmCmEQt6X68Ofkq
VrZ4H8p3r2RH09Rln7+uh2yM80wB99LS6qR0lGmnmM0AEPuS+q677Ayn+xe/Pyp7
yiTp1m09pOScDC9mtQXDjbpOIRe+VmmUoHI2yOQg3tgIfhcvWje2r3NrMKKw2Tbg
UCu4h6JAobUkrwaMFgPyh5266UgnNvUbrUbtgEOtz9btG/mAVWo=
=Ryjd
-----END PGP SIGNATURE-----