Linking qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Linux specific questions, problems.
Post Reply
useretail

Linking qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by useretail »

Looks like version 4.3.3 doesn't link with libtorrent 1.2.12
What could be wrong?

Code: Select all

$ make
cd src/ && ( test -e Makefile || /usr/lib/qt5/bin/qmake -o Makefile /build/qbittorrent-4.3.3/src/src.pro -qtconf /usr/lib/x86_64-linux-gnu/qt5/qt.conf -early QMAKE_CC=x86_64-linux-gnu-gcc QMAKE_CXX=x86_64-linux-gnu-g++ QMAKE_LINK=x86_64-linux-gnu-g++ QMAKE_QMAKE=/usr/bin/x86_64-linux-gnu-qmake PKG_CONFIG=x86_64-linux-gnu-pkg-config -before QMAKE_LRELEASE= ) && make -f Makefile 
make[1]: Entering directory '/build/qbittorrent-4.3.3/src'
linking qbittorrent
/usr/bin/ld: resumedatasavingmanager.o: in function `int libtorrent::detail::bencode_recursive<Utils::IO::FileDeviceOutputIterator>(Utils::IO::FileDeviceOutputIterator&, libtorrent::entry const&)':
resumedatasavingmanager.cpp:(.text._ZN10libtorrent6detail17bencode_recursiveIN5Utils2IO24FileDeviceOutputIteratorEEEiRT_RKNS_5entryE[_ZN10libtorrent6detail17bencode_recursiveIN5Utils2IO24FileDeviceOutputIteratorEEEiRT_RKNS_5entryE]+0x3ce): undefined reference to `libtorrent::entry::dict[abi:cxx11]() const'
/usr/bin/ld: tracker.o: in function `BitTorrent::Tracker::prepareAnnounceResponse(BitTorrent::Tracker::TrackerAnnounceRequest const&)':
tracker.cpp:(.text+0x1d68): undefined reference to `libtorrent::entry::entry(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >)'
/usr/bin/ld: tracker.cpp:(.text+0x2703): undefined reference to `libtorrent::entry::entry(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >)'
/usr/bin/ld: tracker.o: in function `BitTorrent::Tracker::processRequest(Http::Request const&, Http::Environment const&) [clone .cold.202]':
tracker.cpp:(.text.unlikely+0x781): undefined reference to `libtorrent::entry::entry(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >)'
/usr/bin/ld: tracker.o: in function `int libtorrent::detail::bencode_recursive<std::back_insert_iterator<QByteArray> >(std::back_insert_iterator<QByteArray>&, libtorrent::entry const&)':
tracker.cpp:(.text._ZN10libtorrent6detail17bencode_recursiveISt20back_insert_iteratorI10QByteArrayEEEiRT_RKNS_5entryE[_ZN10libtorrent6detail17bencode_recursiveISt20back_insert_iteratorI10QByteArrayEEEiRT_RKNS_5entryE]+0x1ff): undefined reference to `libtorrent::entry::dict[abi:cxx11]() const'
/usr/bin/ld: tracker.o: in function `void std::vector<libtorrent::entry, std::allocator<libtorrent::entry> >::_M_realloc_insert<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >&>(__gnu_cxx::__normal_iterator<libtorrent::entry*, std::vector<libtorrent::entry, std::allocator<libtorrent::entry> > >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >&)':
tracker.cpp:(.text._ZNSt6vectorIN10libtorrent5entryESaIS1_EE17_M_realloc_insertIJRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES1_NS0_3aux12strview_lessESaISt4pairIKSB_S1_EEEEEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_[_ZNSt6vectorIN10libtorrent5entryESaIS1_EE17_M_realloc_insertIJRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES1_NS0_3aux12strview_lessESaISt4pairIKSB_S1_EEEEEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_]+0x118): undefined reference to `libtorrent::entry::entry(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, libtorrent::entry, libtorrent::aux::strview_less, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, libtorrent::entry> > >)'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:1110: qbittorrent] Error 1
make[1]: Leaving directory '/build/qbittorrent-4.3.3/src'
make: *** [Makefile:45: sub-src-make_first] Error 2
Last edited by useretail on Mon Mar 22, 2021 8:36 am, edited 1 time in total.
unseen19
Veteran
Veteran
Posts: 188
Joined: Mon Mar 15, 2021 1:36 pm

Re: Compiling qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by unseen19 »

Whath about CXXFLAGS="-std=c++14"?
./configure CXXFLAGS="-std=c++14"
useretail

Re: Compiling qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by useretail »

unseen19 wrote: Sun Mar 21, 2021 10:37 pm Whath about CXXFLAGS="-std=c++14"?
./configure CXXFLAGS="-std=c++14"
It won't configure

Code: Select all

checking if compiler supports C++17... yes
checking if C++17 is disabled by the set compiler flags... yes
configure: error: The compiler supports C++17 but the user or a dependency has explicitly enabled a lower mode.
unseen19
Veteran
Veteran
Posts: 188
Joined: Mon Mar 15, 2021 1:36 pm

Re: Linking qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by unseen19 »

http://www.libtorrent.org/building.html ... ild-system
some comment may help, check the prerequisite too
useretail

Re: Linking qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by useretail »

I built libtorrent 1.2.12 without any troubles
the problem now is linking qbittorrent with it
User avatar
Peter
Administrator
Administrator
Posts: 2690
Joined: Wed Jul 07, 2010 6:14 pm

Re: Linking qbittorrent-4.3.3 with libtorrent-rasterbar-1.2.12

Post by Peter »

useretail wrote: Sun Mar 21, 2021 2:11 pm Looks like version 4.3.3 doesn't link with libtorrent 1.2.12
I don't know, for me, libtorrent fails at the compilation step with Ubuntu 20.04 LTS. Configuration is all good.
Post Reply