Thanks to both of you for the help.
I've managed to install the correct boost library version with:
sudo add-apt-repository "deb http://cz.archive.ubuntu.com/ubuntu xenial main universe"
sudo apt update
And now the library is available:
apt-cache madison libboost-all-dev
libboost-all-dev | 1.61.0.2 | http://archive.ubuntu.com/ubuntu yakkety/universe amd64 Packages
libboost-all-dev | 1.58.0.1ubuntu1 | http://cz.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
boost-defaults | 1.61.0.2 | http://archive.ubuntu.com/ubuntu yakkety/main Sources
so I installed the correct version with:
sudo apt install libboost-all-dev=1.58.0.1ubuntu1
however building still fails. This is what I did:
git clone https://github.com/goldcoin/goldcoin
cd goldcoin/src
mkdir obj
make -f makefile.unix USE_IPV6=1 USE_UPNP=1 USE_QRCODE=1 64BIT=1 RELEASE=1
Compilation fails with:
net.cpp:61:1: error: reference to ‘array’ is ambiguous
array<int, THREAD_MAX> vnThreadsRunning;
^~~~~
In file included from net.h:11:0,
from main.h:11,
from db.h:10,
from net.cpp:9:
/usr/include/boost/array.hpp:60:11: note: candidates are: template<class T, long unsigned int N> class boost::array
class array {
^~~~~
In file included from /usr/include/c++/6/tuple:39:0,
from /usr/include/c++/6/bits/stl_map.h:63,
from /usr/include/c++/6/map:61,
from util.h:19,
from bignum.h:14,
from main.h:10,
from db.h:10,
from net.cpp:9:
/usr/include/c++/6/array:90:12: note: template<class _Tp, long unsigned int _Nm> struct std::array
struct array
^~~~~
makefile.unix:153: recipe for target 'obj/net.o' failed
make: *** [obj/net.o] Error 1
The master branch was on the 54a47e7 commit at the time.
what's more, the wallet binaries still don't find the libboost_system.so.1.58.0 library. Maybe an LD_LIBRARY_PATH issue?
Any ideas?