Unable to Compile 4.0.2

Linux specific questions, problems.
Post Reply
dinjo

Unable to Compile 4.0.2

Post by dinjo »

Unable to compile keeps failing at below point

Code: Select all

root@odroid64:~/qbittorrent-4.0.2# uname -a
Linux odroid64 3.14.79-109 #1 SMP PREEMPT Thu Mar 16 20:05:25 BRT 2017 aarch64 aarch64 aarch64 GNU/Linux

Code: Select all

cd src/ && ( test -e Makefile || /usr/lib/aarch64-linux-gnu/qt5/bin/qmake /root/qbittorrent-4.0.2/src/src.pro QMAKE_LRELEASE= -o Makefile ) && make -f Makefile
make[1]: Entering directory '/root/qbittorrent-4.0.2/src'
linking qbittorrent-nox
filterparserthread.o: In function `(anonymous namespace)::parseIPAddress(char const*, boost::asio::ip::address&) [clone .constprop.107]':
/root/qbittorrent-4.0.2/src/base/bittorrent/private/filterparserthread.cpp:97: undefined reference to `boost::asio::ip::address_v4::address_v4(std::array<unsigned char, 4ul> const&)'
collect2: error: ld returned 1 exit status
Makefile:503: recipe for target 'qbittorrent-nox' failed
make[1]: *** [qbittorrent-nox] Error 1
make[1]: Leaving directory '/root/qbittorrent-4.0.2/src'
User avatar
Peter
Administrator
Administrator
Posts: 2694
Joined: Wed Jul 07, 2010 6:14 pm

Re: Unable to Compile 4.0.2

Post by Peter »

It sounds/looks like your Boost library is out of date.
What Linux distribution are you using?

(It would not be too wise to recompile the whole system, so yeah.)
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

Code: Select all

root@odroid64:~/qbittorrent-4.0.2# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial

Code: Select all

root@odroid64:~/qbittorrent-4.0.2# dpkg -l | grep boost
ii  libboost-chrono-dev:arm64            1.58.0.1ubuntu1                            arm64        C++ representation of time duration, time point, and clocks (default version)
ii  libboost-chrono1.58-dev:arm64        1.58.0+dfsg-5ubuntu3.1                     arm64        C++ representation of time duration, time point, and clocks
ii  libboost-chrono1.58.0:arm64          1.58.0+dfsg-5ubuntu3.1                     arm64        C++ representation of time duration, time point, and clocks
ii  libboost-dev:arm64                   1.58.0.1ubuntu1                            arm64        Boost C++ Libraries development files (default version)
ii  libboost-filesystem1.58.0:arm64      1.58.0+dfsg-5ubuntu3.1                     arm64        filesystem operations (portable paths, iteration over directories, etc) in C++
ii  libboost-random-dev:arm64            1.58.0.1ubuntu1                            arm64        Boost Random Number Library (default version)
ii  libboost-random1.58-dev:arm64        1.58.0+dfsg-5ubuntu3.1                     arm64        Boost Random Number Library
ii  libboost-random1.58.0:arm64          1.58.0+dfsg-5ubuntu3.1                     arm64        Boost Random Number Library
ii  libboost-system-dev:arm64            1.58.0.1ubuntu1                            arm64        Operating system (e.g. diagnostics support) library (default version)
ii  libboost-system1.58-dev:arm64        1.58.0+dfsg-5ubuntu3.1                     arm64        Operating system (e.g. diagnostics support) library
ii  libboost-system1.58.0:arm64          1.58.0+dfsg-5ubuntu3.1                     arm64        Operating system (e.g. diagnostics support) library
ii  libboost1.58-dev:arm64               1.58.0+dfsg-5ubuntu3.1                     arm64        Boost C++ Libraries development files

Code: Select all

checking for boostlib >= 1.35 (103500)... yes
configure: Boost CPPFLAGS: "-I/usr/include"
                Boost LDFLAGS: "-L/usr/lib/aarch64-linux-gnu"
checking whether the Boost::System library is available... yes
checking for exit in -lboost_system... yes
configure: Boost.System LIB: "-lboost_system"
Last edited by dinjo on Fri Dec 22, 2017 1:40 am, edited 1 time in total.
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

Anyone ?
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

Any help ?
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

Still looking for help
Bongy Trouserpants

Re: Unable to Compile 4.0.2

Post by Bongy Trouserpants »

why are you compiling as root?

Other than that, is root's path appropriate?

The compilation has worked fine, it's a linking error.

The object file  something.so can not be found that matched the source library call to it.  I mean, the object file containing the actual code that should run upon boost::asio::ip::address_v4::address_v4() being called.

You are missing an something.so or something.o file, or they are not in any of the directories underneath $LD_PATH (that maybe incorrect, but maybe they can't be found).  That's the best I can do - I'm not going to dive into the internals of boost. You could ask "what boost library contains the address_v4() code?" on a coding forum, or even google search?

Regardless, don't compile as root - unless there is some reason to do so. A "make install" step might require root.
Last edited by Bongy Trouserpants on Sun Jan 14, 2018 12:01 am, edited 1 time in total.
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

This is on Odroid C2 and have root for all my needs seems like i have to wait more time to find the solution.
Bongy Trouserpants

Re: Unable to Compile 4.0.2

Post by Bongy Trouserpants »

I just ran into similar problems with boost.

In Debian at least, I had to install every single boost library and package to ensure that all of the object files (somthing.so files) were available. That might be one thing to try.
User avatar
Peter
Administrator
Administrator
Posts: 2694
Joined: Wed Jul 07, 2010 6:14 pm

Re: Unable to Compile 4.0.2

Post by Peter »

Hmm it is possible that something is missing from Boost on aarm64?
Compilation problems like this keeps me away from Scaleway's arm64 servers.
Solved this by moving to Debian Testing instead of Ubuntu.

Debian has the package available in Testing: https://packages.debian.org/buster/qbittorrent
Same goes for most other packages and the system never broke on me. They don't recommend it for server (production) use, but then again, I never had any issues with it either.

Ps.: Using Debian's .dsc file sometimes works, one could try to use pbuilder on that as well. Or simply try to install the .deb packages related to qBittorrent.
Last edited by Peter on Mon Jan 22, 2018 6:15 pm, edited 1 time in total.
dinjo

Re: Unable to Compile 4.0.2

Post by dinjo »

Asked this in Odroid forums

Only have 2 options either compile boost libraries from source or wait for Ubuntu 18.04 launch in April/May
Post Reply