error: jsruntime/qv4mathobject.cpp:152:26: error: 'acosh' is not a member of 'std'
jsruntime/qv4mathobject.cpp:152:26: error: 'asinh' is not a member of 'std'
jsruntime/qv4mathobject.cpp: 152:26: Error: 'atanh' is not a member of 'std'
... The
main problem is that the GCC version is too low, the reason for the incomplete support for the standard, the solution is:
open qt-everywhere-src-5.13.0/qtdeclarative/src /qml/jsruntime/qv4mathobject.cpp
modify line 149 here:
#ifdef Q_OS_ANDROID // incomplete std :-(
RETURN_RESULT(Encode(std::log(v +std::sqrt(v + 1) * std::sqrt(v - 1))));
#else
RETURN_RESULT(Encode(std::acosh(v)));
#endif
改成
RETURN_RESULT(Encode(std::log(v +std::sqrt(v + 1) * std::sqrt(v - 1))));
The whole file, and so on, all macros take
#ifdef Q_OS_ANDROID // incomplete std :-(
and
#else
Then, delete line 368:
#if !defined(__ANDROID__) using std::log1p; #endif