Well the '!' operator is a logical NOT statement. Example: A != B means A does not equal B
So it would always need something to identify with.
This is the code around where the error is happening. It is exactly the same as the Terracoin source (Using Meld to compare)
// ********************************************************* Step 6: network initialization
int nSocksVersion = GetArg("-socks", 5);
if (nSocksVersion != 4 && nSocksVersion != 5)
return InitError(strprintf(_("Unknown -socks proxy version requested: %i"), nSocksVersion));
if (mapArgs.count("-onlynet")) {
std::set<enum Network> nets;
BOOST_FOREACH(std::string snet, mapMultiArgs["-onlynet"]) {
enum Network net = ParseNetwork(snet);
if (net == NET_UNROUTABLE)
return InitError(strprintf(_("Unknown network specified in -onlynet: '%s'"), snet.c_str()));
nets.insert(net);
}
for (int n = 0; n < NET_MAX; n++) {
enum Network net = (enum Network)n;
if (!nets.count(net))
SetLimited(net);
}
}
#if defined(USE_IPV6)
#if ! USE_IPV6
else
SetLimited(NET_IPV6);
#endif
#endif
The only thing I see is the "#if ! USE_IPV6", However the '#' tells the compiler not to compile that line. It is like a comment using '/' except that a real '/' comment gets compiled.
I am stumped, make sure your copy of the source is not corrupted, and possibly check to make sure that 'if ! USE_IPV6' has the '#' prefix so the compiler will ignore it.
Also make sure you have build-essential installed.
I can compile sucessfully on both 12.4 and 12.10....