Segmentation fault on Ubuntu 21.10

sudo -u urbackup gdb --args /bin/urbackupsrv run -v debug
GNU gdb (Ubuntu 11.1-0ubuntu2) 11.1
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /bin/urbackupsrv...
(No debugging symbols found in /bin/urbackupsrv)
(gdb) run
Starting program: /usr/bin/urbackupsrv run -v debug
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Raising nice-ceiling to 35 failed. (errno=1)
[New Thread 0x7ffff6745640 (LWP 157521)]
2021-11-07 08:51:30: Starting HTTP-Server on port 55414
2021-11-07 08:51:30: HTTP: Server started up successfully!
[New Thread 0x7ffff5f44640 (LWP 157522)]
2021-11-07 08:51:30: WARNING: AWS-Client: Retry Strategy will use the default max attempts.
2021-11-07 08:51:30: WARNING: AWS-Client: SDK was built without an Http implementation, default http client factory can't create an Http client instance.
2021-11-07 08:51:30: Generating Server private/public ECDSA key...

Thread 1 "urbackupsrv" received signal SIGSEGV, Segmentation fault.
0x00007ffff7d562f4 in ?? () from /lib/x86_64-linux-gnu/libcrypto++.so.8
(gdb) bt
#0  0x00007ffff7d562f4 in ?? () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#1  0x00007ffff7c35a5c in unsigned long CryptoPP::AdvancedProcessBlocks128_4x1_SSE<void (*)(long long __vector(2)&, unsigned int const*, unsigned int), void (*)(long long __vector(2)&, long long __vector(2)&, long long __vector(2)&, long long __vector(2)&, unsigned int const*, unsigned int), unsigned int>(void (*)(long long __vector(2)&, unsigned int const*, unsigned int), void (*)(long long __vector(2)&, long long __vector(2)&, long long __vector(2)&, long long __vector(2)&, unsigned int const*, unsigned int), unsigned int const*, unsigned long, unsigned char const*, unsigned char const*, unsigned char*, unsigned long, unsigned int) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#2  0x00007ffff7d56770 in CryptoPP::Rijndael_Enc_AdvancedProcessBlocks_AESNI(unsigned int const*, unsigned long, unsigned char const*, unsigned char const*, unsigned char*, unsigned long, unsigned int) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#3  0x00007ffff7d55a25 in CryptoPP::Rijndael::Enc::AdvancedProcessBlocks(unsigned char const*, unsigned char const*, unsigned char*, unsigned long, unsigned int) const ()
   from /lib/x86_64-linux-gnu/libcrypto++.so.8
#4  0x00007ffff7d50243 in CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#5  0x00007ffff7bf6d18 in CryptoPP::RandomNumberGenerator::GenerateBlock(unsigned char*, unsigned long) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#6  0x00007ffff7c0b16d in CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator&, unsigned long) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#7  0x00007ffff7c0b2ce in CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator&, CryptoPP::Integer const&, CryptoPP::Integer const&) ()
   from /lib/x86_64-linux-gnu/libcrypto++.so.8
#8  0x00007ffff7c0d355 in CryptoPP::Integer::GenerateRandomNoThrow(CryptoPP::RandomNumberGenerator&, CryptoPP::NameValuePairs const&) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#9  0x00007ffff7c0dc7e in CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator&, CryptoPP::Integer const&, CryptoPP::Integer const&, CryptoPP::Integer::RandomNumberType, CryptoPP::Integer const&, CryptoPP::Integer const&) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#10 0x00007ffff7c0de71 in CryptoPP::Integer::Integer(CryptoPP::RandomNumberGenerator&, CryptoPP::Integer const&, CryptoPP::Integer const&, CryptoPP::Integer::RandomNumberType, CryptoPP::Integer const&, CryptoPP::Integer const&) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#11 0x00007ffff7c69de7 in CryptoPP::DL_PrivateKeyImpl<CryptoPP::DL_GroupParameters_EC<CryptoPP::EC2N> >::GenerateRandom(CryptoPP::RandomNumberGenerator&, CryptoPP::NameValuePairs const&) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#12 0x00007ffff7ca5b90 in CryptoPP::DL_PrivateKey_WithSignaturePairwiseConsistencyTest<CryptoPP::DL_PrivateKey_EC<CryptoPP::EC2N>, CryptoPP::ECDSA<CryptoPP::EC2N, CryptoPP::SHA256> >::GenerateRandom(CryptoPP::RandomNumberGenerator&, CryptoPP::NameValuePairs const&) () from /lib/x86_64-linux-gnu/libcrypto++.so.8
#13 0x0000555555a19dea in ?? ()
#14 0x00005555557d1ab7 in ?? ()
#15 0x00005555556b758a in ?? ()
#16 0x0000555555d05f0f in ?? ()
#17 0x00005555559a4075 in ?? ()
#18 0x000055555568544f in ?? ()
#19 0x00007ffff708afd0 in __libc_start_call_main (main=main@entry=0x555555684e50, argc=argc@entry=4, argv=argv@entry=0x7fffffffe5c8) at ../sysdeps/nptl/libc_start_call_main.h:58
#20 0x00007ffff708b07d in __libc_start_main_impl (main=0x555555684e50, argc=4, argv=0x7fffffffe5c8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, 
    stack_end=0x7fffffffe5b8) at ../csu/libc-start.c:409
#21 0x000055555568b9c5 in ?? ()

Thanks for looking into it.

Try this solution:

So I rebuilt the package, removing the libcrypto++-dev requirement and using --enable-embedded-cryptopp to not depend on it, and it did run. Haven’t tested the other features, but at least it does not crash anymore at startup.

Yeah too many dependences problems related to Debian/Ubuntu maintainers.