Answer the question
In order to leave comments, you need to log in
Building libtorrent under CentOS 7?
Greetings!
Gentlemen, firstly, I apologize if I ask for help in the wrong place, and secondly, I emphasize that I am absolutely green in Linux'ah.
There was a need to build the current qbittorent for CentOS 7, because the existing package for CentOS is quite dense.
I found an instruction in which there are two stages:
- building libtorrent ;
- build qbittorent.
At the build stage of libtorrent-1.2.0, the following errors got out:
[[email protected] libtorrent-rasterbar-1.2.0]# make
Making all in include/libtorrent
make[1]: Entering directory `/root/libtorrent-rasterbar-1.2.0/include/libtorrent'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/libtorrent-rasterbar-1.2.0/include/libtorrent'
Making all in src
make[1]: Entering directory `/root/libtorrent-rasterbar-1.2.0/src'
CXX libtorrent_rasterbar_la-web_connection_base.lo
In file included from ../include/libtorrent/entry.hpp:76:0,
from ../include/libtorrent/settings_pack.hpp:36,
from ../include/libtorrent/aux_/session_settings.hpp:37,
from ../include/libtorrent/peer_connection.hpp:53,
from ../include/libtorrent/web_connection_base.hpp:42,
from web_connection_base.cpp:38:
../include/libtorrent/string_view.hpp:60:24: error: missing space between ‘""’ and suffix identifier
constexpr string_view operator""_sv(char const* str, std::size_t len)
^
In file included from ../include/libtorrent/settings_pack.hpp:36:0,
from ../include/libtorrent/aux_/session_settings.hpp:37,
from ../include/libtorrent/peer_connection.hpp:53,
from ../include/libtorrent/web_connection_base.hpp:42,
from web_connection_base.cpp:38:
../include/libtorrent/entry.hpp: In member function ‘typename libtorrent::aux::map_string<T>::base::iterator libtorrent::aux::map_string<T>::find(const string_view&)’:
../include/libtorrent/entry.hpp:110:33: error: ‘const string_view’ has no member named ‘to_string’
return this->base::find(key.to_string());
^
../include/libtorrent/entry.hpp: In member function ‘typename libtorrent::aux::map_string<T>::base::const_iterator libtorrent::aux::map_string<T>::find(const string_view&) const’:
../include/libtorrent/entry.hpp:115:33: error: ‘const string_view’ has no member named ‘to_string’
return this->base::find(key.to_string());
^
In file included from ../include/libtorrent/aux_/session_settings.hpp:37:0,
from ../include/libtorrent/peer_connection.hpp:53,
from ../include/libtorrent/web_connection_base.hpp:42,
from web_connection_base.cpp:38:
../include/libtorrent/settings_pack.hpp: At global scope:
../include/libtorrent/settings_pack.hpp:93:18: error: function ‘libtorrent::settings_pack& libtorrent::settings_pack::operator=(libtorrent::settings_pack&&)’ defaulted on its first declaration with an exception-specification that differs from the implicit declaration ‘libtorrent::settings_pack& libtorrent::settings_pack::operator=(libtorrent::settings_pack&&)’
settings_pack& operator=(settings_pack&&) noexcept = default;
^
In file included from ../include/libtorrent/torrent_info.hpp:52:0,
from ../include/libtorrent/torrent.hpp:48,
from ../include/libtorrent/web_connection_base.hpp:43,
from web_connection_base.cpp:38:
../include/libtorrent/file_storage.hpp:64:15: error: function ‘libtorrent::file_entry& libtorrent::file_entry::operator=(libtorrent::file_entry&&) &’ defaulted on its first declaration with an exception-specification that differs from the implicit declaration ‘libtorrent::file_entry& libtorrent::file_entry::operator=(libtorrent::file_entry&&)’
file_entry& operator=(file_entry&&) & noexcept = default;
^
In file included from ../include/libtorrent/aux_/socket_type.hpp:41:0,
from ../include/libtorrent/utp_socket_manager.hpp:39,
from ../include/libtorrent/aux_/session_udp_sockets.hpp:36,
from ../include/libtorrent/aux_/session_interface.hpp:46,
from ../include/libtorrent/ip_voter.hpp:40,
from ../include/libtorrent/peer_list.hpp:47,
from ../include/libtorrent/torrent.hpp:51,
from ../include/libtorrent/web_connection_base.hpp:43,
from web_connection_base.cpp:38:
../include/libtorrent/i2p_stream.hpp: In member function ‘void libtorrent::i2p_stream::set_destination(libtorrent::string_view)’:
../include/libtorrent/i2p_stream.hpp:105:51: error: ‘using string_view = boost::string_ref’ has no member named ‘to_string’
void set_destination(string_view d) { m_dest = d.to_string(); }
^
make[1]: *** [libtorrent_rasterbar_la-web_connection_base.lo] Error 1
make[1]: Leaving directory `/root/libtorrent-rasterbar-1.2.0/src'
make: *** [all-recursive] Error 1
Answer the question
In order to leave comments, you need to log in
For starters, try a more recent tooling (compiler, header files, etc.) for the build.
The second advice - theoretically, if all the dependencies are packed inside, then you can build the library on some kind of ubuntu, and then transfer it to CentOS.
Building anything in centos is such fun that without knowing how programs are built in linux in general, it will turn into a very exciting educational program for learning the compiler, linker, autotools / cmake (depending on what you use), make...
If you don't want to upgrade skills in full immersion mode, look for a third-party turnip where this package is available (someone will probably collect a rather popular package) and connect it. And for starters, connect large third-party turnips like epel, elgis, lux, rpmforge
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question