'log2' is not a member of 'std'

Jan Stary hans at stare.cz
Sun Jul 2 10:28:26 UTC 2017


This is MacOSX 10.6.8 running various compilers provided by MacPorts.
Compiling the following C++ source

	#include <cmath>

	int main(void)
	{
		double d = std::log2(2.3456789f);
		return 0;
	}

results in

	'log2' is not a member of 'std'.

This happens with the system g++, which is i686-apple-darwin10-g++-4.2.1,
each of g++-4.0 g++-4.2 g++-mp-5 g++-mp-6, and with clang++-mp-3.4;
in each case, I am compiling as $CXX -std=c++11 prog.c

Apparently, there is some relatively recent turmoil about the C++ libs;
I don't know much c++ but find myself compiling some third party C++ code.
Am I missing something obvious?

	Jan



More information about the macports-users mailing list