Unable to build on Manjaro/Arch (linking OpenDHT)
I'm trying to build Jami-daemon on my Manjaro but having trouble with linking OpenDHT. I've tried dynamic/static linking with g++ as well with clang++ compilers. Still the same problem:
Linking target src/libjami.so.9.1.0 FAILED: src/libjami.so.9.1.0 c++ -shared -o src/libjami.so.9.1.0 'src/25a6634@@jami@sha/libopendht.so' 'src/25a6634@@jami@sha/client_callmanager.cpp.o' 'src/25a6634@@jami@sha/client_configurationmanager.cpp.o' 'src/25a6634@@jami@sha/client_datatransfer.cpp.o' 'src/25a6634@@jami@sha/client_presencemanager.cpp.o' 'src/25a6634@@jami@sha/client_ring_signal.cpp.o' 'src/25a6634@@jami@sha/client_videomanager.cpp.o' 'src/25a6634@@jami@sha/config_yamlparser.cpp.o' 'src/25a6634@@jami@sha/hooks_urlhook.cpp.o' 'src/25a6634@@jami@sha/im_instant_messaging.cpp.o' 'src/25a6634@@jami@sha/im_message_engine.cpp.o' 'src/25a6634@@jami@sha/jamidht_eth_libdevcore_Common.cpp.o' 'src/25a6634@@jami@sha/jamidht_eth_libdevcore_CommonData.cpp.o' 'src/25a6634@@jami@sha/jamidht_eth_libdevcore_FixedHash.cpp.o' 'src/25a6634@@jami@sha/jamidht_eth_libdevcore_SHA3.cpp.o' 'src/25a6634@@jami@sha/jamidht_eth_libdevcrypto_Common.cpp.o' 'src/25a6634@@jami@sha/jamidht_accountarchive.cpp.o' 'src/25a6634@@jami@sha/jamidht_account_manager.cpp.o' 'src/25a6634@@jami@sha/jamidht_archive_account_manager.cpp.o' 'src/25a6634@@jami@sha/jamidht_channeled_transport.cpp.o' 'src/25a6634@@jami@sha/jamidht_connectionmanager.cpp.o' 'src/25a6634@@jami@sha/jamidht_contact_list.cpp.o' 'src/25a6634@@jami@sha/jamidht_jamiaccount.cpp.o' 'src/25a6634@@jami@sha/jamidht_multiplexed_socket.cpp.o' 'src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o' 'src/25a6634@@jami@sha/jamidht_p2p.cpp.o' 'src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o' 'src/25a6634@@jami@sha/jamidht_sips_transport_ice.cpp.o' 'src/25a6634@@jami@sha/media_audio_sound_audiofile.cpp.o' 'src/25a6634@@jami@sha/media_audio_sound_dtmf.cpp.o' 'src/25a6634@@jami@sha/media_audio_sound_dtmfgenerator.cpp.o' 'src/25a6634@@jami@sha/media_audio_sound_tone.cpp.o' 'src/25a6634@@jami@sha/media_audio_sound_tonelist.cpp.o' 'src/25a6634@@jami@sha/media_audio_audiobuffer.cpp.o' 'src/25a6634@@jami@sha/media_audio_audio_frame_resizer.cpp.o' 'src/25a6634@@jami@sha/media_audio_audio_input.cpp.o' 'src/25a6634@@jami@sha/media_audio_audiolayer.cpp.o' 'src/25a6634@@jami@sha/media_audio_audioloop.cpp.o' 'src/25a6634@@jami@sha/media_audio_audio_receive_thread.cpp.o' 'src/25a6634@@jami@sha/media_audio_audio_rtp_session.cpp.o' 'src/25a6634@@jami@sha/media_audio_audio_sender.cpp.o' 'src/25a6634@@jami@sha/media_audio_dcblocker.cpp.o' 'src/25a6634@@jami@sha/media_audio_dsp.cpp.o' 'src/25a6634@@jami@sha/media_audio_resampler.cpp.o' 'src/25a6634@@jami@sha/media_audio_ringbuffer.cpp.o' 'src/25a6634@@jami@sha/media_audio_ringbufferpool.cpp.o' 'src/25a6634@@jami@sha/media_audio_tonecontrol.cpp.o' 'src/25a6634@@jami@sha/media_congestion_control.cpp.o' 'src/25a6634@@jami@sha/media_libav_utils.cpp.o' 'src/25a6634@@jami@sha/media_localrecorder.cpp.o' 'src/25a6634@@jami@sha/media_localrecordermanager.cpp.o' 'src/25a6634@@jami@sha/media_media_buffer.cpp.o' 'src/25a6634@@jami@sha/media_media_codec.cpp.o' 'src/25a6634@@jami@sha/media_media_decoder.cpp.o' 'src/25a6634@@jami@sha/media_media_encoder.cpp.o' 'src/25a6634@@jami@sha/media_media_filter.cpp.o' 'src/25a6634@@jami@sha/media_media_io_handle.cpp.o' 'src/25a6634@@jami@sha/media_media_player.cpp.o' 'src/25a6634@@jami@sha/media_media_recorder.cpp.o' 'src/25a6634@@jami@sha/media_recordable.cpp.o' 'src/25a6634@@jami@sha/media_socket_pair.cpp.o' 'src/25a6634@@jami@sha/media_srtp.c.o' 'src/25a6634@@jami@sha/media_system_codec_container.cpp.o' 'src/25a6634@@jami@sha/security_certstore.cpp.o' 'src/25a6634@@jami@sha/security_diffie-hellman.cpp.o' 'src/25a6634@@jami@sha/security_memory.cpp.o' 'src/25a6634@@jami@sha/security_tls_session.cpp.o' 'src/25a6634@@jami@sha/security_tlsvalidator.cpp.o' 'src/25a6634@@jami@sha/sip_pres_sub_client.cpp.o' 'src/25a6634@@jami@sha/sip_pres_sub_server.cpp.o' 'src/25a6634@@jami@sha/sip_sdes_negotiator.cpp.o' 'src/25a6634@@jami@sha/sip_sdp.cpp.o' 'src/25a6634@@jami@sha/sip_sipaccountbase.cpp.o' 'src/25a6634@@jami@sha/sip_sipaccount.cpp.o' 'src/25a6634@@jami@sha/sip_sipcall.cpp.o' 'src/25a6634@@jami@sha/sip_sippresence.cpp.o' 'src/25a6634@@jami@sha/sip_siptransport.cpp.o' 'src/25a6634@@jami@sha/sip_sip_utils.cpp.o' 'src/25a6634@@jami@sha/sip_sipvoiplink.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_igd.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_mapping.cpp.o' 'src/25a6634@@jami@sha/upnp_upnp_context.cpp.o' 'src/25a6634@@jami@sha/upnp_upnp_control.cpp.o' 'src/25a6634@@jami@sha/account.cpp.o' 'src/25a6634@@jami@sha/account_factory.cpp.o' 'src/25a6634@@jami@sha/archiver.cpp.o' 'src/25a6634@@jami@sha/base64.cpp.o' 'src/25a6634@@jami@sha/buildinfo.cpp.o' 'src/25a6634@@jami@sha/call.cpp.o' 'src/25a6634@@jami@sha/call_factory.cpp.o' 'src/25a6634@@jami@sha/conference.cpp.o' 'src/25a6634@@jami@sha/data_transfer.cpp.o' 'src/25a6634@@jami@sha/fileutils.cpp.o' 'src/25a6634@@jami@sha/ftp_server.cpp.o' 'src/25a6634@@jami@sha/ice_transport.cpp.o' 'src/25a6634@@jami@sha/ip_utils.cpp.o' 'src/25a6634@@jami@sha/logger.cpp.o' 'src/25a6634@@jami@sha/manager.cpp.o' 'src/25a6634@@jami@sha/peer_connection.cpp.o' 'src/25a6634@@jami@sha/preferences.cpp.o' 'src/25a6634@@jami@sha/ring_api.cpp.o' 'src/25a6634@@jami@sha/scheduled_executor.cpp.o' 'src/25a6634@@jami@sha/smartools.cpp.o' 'src/25a6634@@jami@sha/string_utils.cpp.o' 'src/25a6634@@jami@sha/threadloop.cpp.o' 'src/25a6634@@jami@sha/turn_transport.cpp.o' 'src/25a6634@@jami@sha/utf8_utils.cpp.o' 'src/25a6634@@jami@sha/media_audio_alsa_alsalayer.cpp.o' 'src/25a6634@@jami@sha/media_audio_pulseaudio_audiostream.cpp.o' 'src/25a6634@@jami@sha/media_audio_pulseaudio_pulselayer.cpp.o' 'src/25a6634@@jami@sha/media_audio_jack_jacklayer.cpp.o' 'src/25a6634@@jami@sha/media_audio_portaudio_portaudiolayer.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_pupnp_pupnp.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_pupnp_upnp_igd.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_natpmp_nat_pmp.cpp.o' 'src/25a6634@@jami@sha/upnp_protocol_natpmp_pmp_igd.cpp.o' 'src/25a6634@@jami@sha/media_video_filter_transpose.cpp.o' 'src/25a6634@@jami@sha/media_video_sinkclient.cpp.o' 'src/25a6634@@jami@sha/media_video_video_base.cpp.o' 'src/25a6634@@jami@sha/media_video_video_device_monitor.cpp.o' 'src/25a6634@@jami@sha/media_video_video_input.cpp.o' 'src/25a6634@@jami@sha/media_video_video_mixer.cpp.o' 'src/25a6634@@jami@sha/media_video_video_receive_thread.cpp.o' 'src/25a6634@@jami@sha/media_video_video_rtp_session.cpp.o' 'src/25a6634@@jami@sha/media_video_video_scaler.cpp.o' 'src/25a6634@@jami@sha/media_video_video_sender.cpp.o' 'src/25a6634@@jami@sha/media_video_accel.cpp.o' 'src/25a6634@@jami@sha/media_video_v4l2_video_device_impl.cpp.o' 'src/25a6634@@jami@sha/media_video_v4l2_video_device_monitor_impl.cpp.o' -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libjami.so.9 -pthread src/25a6634@@jami@sha/libopendht.so /usr/lib/libgnutls.so /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjsua2-x86_64-pc-linux-gnu.a /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib/libstdc++.so /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjsua-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjsip-ua-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjsip-simple-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjsip-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjmedia-codec-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjmedia-videodev-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjmedia-audiodev-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjmedia-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjnath-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpjlib-util-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libsrtp-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libyuv-x86_64-pc-linux-gnu.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libpj-x86_64-pc-linux-gnu.a /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib/libopus.so /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib/libvpx.so /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib/libuuid.so -lm -lrt -lpthread /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib/libgnutls.so /usr/lib/libsecp256k1.so /usr/lib/libavcodec.so /usr/lib/libavfilter.so /usr/lib/libavdevice.so /usr/lib/libavformat.so /usr/lib/libswscale.so /usr/lib/libswresample.so /usr/lib/libavutil.so /usr/lib/libspeex.so /usr/lib/libspeexdsp.so /usr/lib/libyaml-cpp.so /usr/lib/libjsoncpp.so /usr/lib/libz.so /usr/lib/libasound.so /usr/lib/libpulse.so /usr/lib/libjack.so /usr/lib/libportaudio.so /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libupnp.a /home/martin/Programy/ring-daemon/contrib/x86_64-pc-linux-gnu/lib/libixml.a -lnatpmp /usr/lib/libssl.so /usr/lib/libcrypto.so /usr/lib/libudev.so -Wl,--end-group /usr/bin/ld: src/25a6634@@jami@sha/jamidht_jamiaccount.cpp.o: in function
jami::JamiAccount::loadCachedUrl(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::chrono::duration<long, std::ratio<1l, 1l> > const&, std::function<void (dht::http::Response const&)>)::{lambda()#1 (closed)}::operator()() const [clone .cold]':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Request::Request(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void (dht::http::Response const&)>, std::shared_ptr<dht::Logger>)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_jamiaccount.cpp.o: in function
jami::JamiAccount::loadCachedUrl(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::chrono::duration<long, std::ratio<1l, 1l> > const&, std::function<void (dht::http::Response const&)>)::{lambda()#1 (closed)}::operator()() const [clone .cold]':
/home/martin/Programy/ring-daemon/build/../src/jamidht/jamiaccount.cpp:2465: undefined reference to dht::http::Request::send()' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_jamiaccount.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Request::destroydht::http::Request(dht::http::Request*)':
/usr/include/c++/9.3.0/ext/new_allocator.h:153: undefined reference to dht::http::Request::~Request()' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
jami::NameDirectory::setHeaderFields(dht::http::Request&)':
/home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:129: undefined reference to dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:130: undefined reference to
dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits, std::allocator >)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:131: undefined reference to dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Resolver::construct<dht::http::Resolver, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger&>(dht::http::Resolver*, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger&)':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Resolver::Resolver(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Request::construct<dht::http::Request, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(dht::http::Request*, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >&&)':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Request::Request(asio::io_context&, std::shared_ptr<dht::http::Resolver>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned short)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
jami::NameDirectory::lookupAddress(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::function<void (std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, jami::NameDirectory::Response)>)':
/home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:145: undefined reference to dht::http::Request::set_method(restinio::http_method_id_t)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:147: undefined reference to
dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:185: undefined reference to dht::http::Request::send()' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Request::construct<dht::http::Request, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(dht::http::Request*, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >&&)':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Request::Request(asio::io_context&, std::shared_ptr<dht::http::Resolver>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned short)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
jami::NameDirectory::lookupName(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::function<void (std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, jami::NameDirectory::Response)>)':
/home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:219: undefined reference to dht::http::Request::set_method(restinio::http_method_id_t)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:221: undefined reference to
dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:279: undefined reference to dht::http::Request::send()' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Request::construct<dht::http::Request, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(dht::http::Request*, asio::io_context&, std::shared_ptrdht::http::Resolver&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >&&)':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Request::Request(asio::io_context&, std::shared_ptr<dht::http::Resolver>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned short)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function
jami::NameDirectory::registerName(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::function<void (jami::NameDirectory::RegistrationResponse)>, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)':
/home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:325: undefined reference to dht::http::Request::set_method(restinio::http_method_id_t)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:327: undefined reference to
dht::http::Request::set_body(std::__cxx11::basic_string<char, std::char_traits, std::allocator >)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:331: undefined reference to dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/namedirectory.cpp:372: undefined reference to
dht::http::Request::send()'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_namedirectory.cpp.o: in function void __gnu_cxx::new_allocator<dht::http::Resolver>::destroy<dht::http::Resolver>(dht::http::Resolver*)': /usr/include/c++/9.3.0/ext/new_allocator.h:153: undefined reference to
dht::http::Resolver::~Resolver()'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function jami::ServerAccountManager::setHeaderFields(dht::http::Request&)': /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:56: undefined reference to
dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits, std::allocator >)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:57: undefined reference to dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:58: undefined reference to
dht::http::Request::set_header_field(restinio::http_field_t, std::__cxx11::basic_string<char, std::char_traits, std::allocator >)'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function jami::ServerAccountManager::initAuthentication(std::future<std::unique_ptr<dht::crypto::CertificateRequest, std::default_delete<dht::crypto::CertificateRequest> > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unique_ptr<jami::AccountManager::AccountCredentials, std::default_delete<jami::AccountManager::AccountCredentials> >, std::function<void (jami::AccountInfo const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, std::vector<unsigned char, std::allocator<unsigned char> >&&)>, std::function<void (jami::AccountManager::AuthError, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>, jami::ContactList::OnChangeCallback)::{lambda()#1}::operator()() const::{lambda(jami::AccountManager&)#1}::operator()({lambda()#1}) const': /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:100: undefined reference to
dht::http::Request::set_body(std::__cxx11::basic_string<char, std::char_traits, std::allocator >)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:103: undefined reference to dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:203: undefined reference to
dht::http::Request::send()'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function void __gnu_cxx::new_allocator<dht::http::Request>::construct<dht::http::Request, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>&>(dht::http::Request*, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>&)': /usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to
dht::http::Request::Request(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger)'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function jami::ServerAccountManager::initAuthentication(std::future<std::unique_ptr<dht::crypto::CertificateRequest, std::default_delete<dht::crypto::CertificateRequest> > >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unique_ptr<jami::AccountManager::AccountCredentials, std::default_delete<jami::AccountManager::AccountCredentials> >, std::function<void (jami::AccountInfo const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, std::vector<unsigned char, std::allocator<unsigned char> >&&)>, std::function<void (jami::AccountManager::AuthError, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)>, jami::ContactList::OnChangeCallback)': /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:86: undefined reference to
dht::http::Request::set_method(restinio::http_method_id_t)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:87: undefined reference to dht::http::Request::set_auth(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function
void __gnu_cxx::new_allocatordht::http::Request::construct<dht::http::Request, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger&>(dht::http::Request*, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger&)':
/usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to dht::http::Request::Request(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>)' /usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function
jami::ServerAccountManager::syncDevices()':
/home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:217: undefined reference to dht::http::Request::set_method(restinio::http_method_id_t)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:218: undefined reference to
dht::http::Request::set_auth(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:220: undefined reference to dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:254: undefined reference to
dht::http::Request::send()'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function void __gnu_cxx::new_allocator<dht::http::Request>::construct<dht::http::Request, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>&>(dht::http::Request*, asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>&)': /usr/include/c++/9.3.0/ext/new_allocator.h:147: undefined reference to
dht::http::Request::Request(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::shared_ptrdht::Logger)'
/usr/bin/ld: src/25a6634@@jami@sha/jamidht_server_account_manager.cpp.o: in function jami::ServerAccountManager::revokeDevice(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void (jami::AccountManager::RevokeDeviceResult)>)': /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:270: undefined reference to
dht::http::Request::set_method(restinio::http_method_id_t)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:271: undefined reference to dht::http::Request::set_auth(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:273: undefined reference to
dht::http::Request::add_on_done_callback(std::function<void (dht::http::Response const&)>)'
/usr/bin/ld: /home/martin/Programy/ring-daemon/build/../src/jamidht/server_account_manager.cpp:305: undefined reference to dht::http::Request::send()' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed.
I have installed OpenDHT version 2.1.0 - compiled manually from repo.
Tried with meson/ninja build as well as with with previous cmake/make. I've also tried ring-project make-ring.py script. Still the same issue. Any ideas?